AsciiSPrint returns The number of ASCII characters in the produced output buffer not including the Null-terminator, but SerialStatusCodeWorker has bug which overwrites the last character, which causes there is a missing character in serial log output. The fix is to resolve this issue.
Signed-off-by: li-elvin Reviewed-by: lgao4 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12526 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
		@@ -1,7 +1,7 @@
 | 
			
		||||
/** @file
 | 
			
		||||
  Serial I/O status code reporting worker.
 | 
			
		||||
 | 
			
		||||
  Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
 | 
			
		||||
  Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
 | 
			
		||||
  This program and the accompanying materials
 | 
			
		||||
  are licensed and made available under the terms and conditions of the BSD License
 | 
			
		||||
  which accompanies this distribution.  The full text of the license may be found at
 | 
			
		||||
@@ -99,7 +99,7 @@ SerialStatusCodeReportWorker (
 | 
			
		||||
    
 | 
			
		||||
    if (CallerId != NULL) {
 | 
			
		||||
      CharCount += AsciiSPrint (
 | 
			
		||||
                     &Buffer[CharCount - 1],
 | 
			
		||||
                     &Buffer[CharCount],
 | 
			
		||||
                     (sizeof (Buffer) - (sizeof (Buffer[0]) * CharCount)),
 | 
			
		||||
                     " %g",
 | 
			
		||||
                     CallerId
 | 
			
		||||
@@ -108,7 +108,7 @@ SerialStatusCodeReportWorker (
 | 
			
		||||
 | 
			
		||||
    if (Data != NULL) {
 | 
			
		||||
      CharCount += AsciiSPrint (
 | 
			
		||||
                     &Buffer[CharCount - 1],
 | 
			
		||||
                     &Buffer[CharCount],
 | 
			
		||||
                     (sizeof (Buffer) - (sizeof (Buffer[0]) * CharCount)),
 | 
			
		||||
                     " %x",
 | 
			
		||||
                     Data
 | 
			
		||||
@@ -116,7 +116,7 @@ SerialStatusCodeReportWorker (
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    CharCount += AsciiSPrint (
 | 
			
		||||
                   &Buffer[CharCount - 1],
 | 
			
		||||
                   &Buffer[CharCount],
 | 
			
		||||
                   (sizeof (Buffer) - (sizeof (Buffer[0]) * CharCount)),
 | 
			
		||||
                   "\n\r"
 | 
			
		||||
                   );
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/** @file
 | 
			
		||||
  Serial I/O status code reporting worker.
 | 
			
		||||
 | 
			
		||||
  Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
 | 
			
		||||
  Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
 | 
			
		||||
  This program and the accompanying materials                          
 | 
			
		||||
  are licensed and made available under the terms and conditions of the BSD License         
 | 
			
		||||
  which accompanies this distribution.  The full text of the license may be found at        
 | 
			
		||||
@@ -94,7 +94,7 @@ SerialStatusCodeReportWorker (
 | 
			
		||||
   
 | 
			
		||||
    if (CallerId != NULL) {
 | 
			
		||||
      CharCount += AsciiSPrint (
 | 
			
		||||
                     &Buffer[CharCount - 1],
 | 
			
		||||
                     &Buffer[CharCount],
 | 
			
		||||
                     (sizeof (Buffer) - (sizeof (Buffer[0]) * CharCount)),
 | 
			
		||||
                     " %g",
 | 
			
		||||
                     CallerId
 | 
			
		||||
@@ -103,7 +103,7 @@ SerialStatusCodeReportWorker (
 | 
			
		||||
 | 
			
		||||
    if (Data != NULL) {
 | 
			
		||||
      CharCount += AsciiSPrint (
 | 
			
		||||
                     &Buffer[CharCount - 1],
 | 
			
		||||
                     &Buffer[CharCount],
 | 
			
		||||
                     (sizeof (Buffer) - (sizeof (Buffer[0]) * CharCount)),
 | 
			
		||||
                     " %x",
 | 
			
		||||
                     Data
 | 
			
		||||
@@ -111,7 +111,7 @@ SerialStatusCodeReportWorker (
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    CharCount += AsciiSPrint (
 | 
			
		||||
                   &Buffer[CharCount - 1],
 | 
			
		||||
                   &Buffer[CharCount],
 | 
			
		||||
                   (sizeof (Buffer) - (sizeof (Buffer[0]) * CharCount)),
 | 
			
		||||
                   "\n\r"
 | 
			
		||||
                   );
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/** @file
 | 
			
		||||
  Serial I/O status code reporting worker.
 | 
			
		||||
 | 
			
		||||
  Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR>
 | 
			
		||||
  Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.<BR>
 | 
			
		||||
  This program and the accompanying materials                          
 | 
			
		||||
  are licensed and made available under the terms and conditions of the BSD License         
 | 
			
		||||
  which accompanies this distribution.  The full text of the license may be found at        
 | 
			
		||||
@@ -94,7 +94,7 @@ SerialStatusCodeReportWorker (
 | 
			
		||||
   
 | 
			
		||||
    if (CallerId != NULL) {
 | 
			
		||||
      CharCount += AsciiSPrint (
 | 
			
		||||
                     &Buffer[CharCount - 1],
 | 
			
		||||
                     &Buffer[CharCount],
 | 
			
		||||
                     (sizeof (Buffer) - (sizeof (Buffer[0]) * CharCount)),
 | 
			
		||||
                     " %g",
 | 
			
		||||
                     CallerId
 | 
			
		||||
@@ -103,7 +103,7 @@ SerialStatusCodeReportWorker (
 | 
			
		||||
 | 
			
		||||
    if (Data != NULL) {
 | 
			
		||||
      CharCount += AsciiSPrint (
 | 
			
		||||
                     &Buffer[CharCount - 1],
 | 
			
		||||
                     &Buffer[CharCount],
 | 
			
		||||
                     (sizeof (Buffer) - (sizeof (Buffer[0]) * CharCount)),
 | 
			
		||||
                     " %x",
 | 
			
		||||
                     Data
 | 
			
		||||
@@ -111,7 +111,7 @@ SerialStatusCodeReportWorker (
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    CharCount += AsciiSPrint (
 | 
			
		||||
                   &Buffer[CharCount - 1],
 | 
			
		||||
                   &Buffer[CharCount],
 | 
			
		||||
                   (sizeof (Buffer) - (sizeof (Buffer[0]) * CharCount)),
 | 
			
		||||
                   "\n\r"
 | 
			
		||||
                   );
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user