]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Library/BasePrintLib/PrintLib.c
1) Add support for %p to print pointers
[mirror_edk2.git] / MdePkg / Library / BasePrintLib / PrintLib.c
index f2c7ee5807de4b3c88ac11be07dafdd2b79e434a..84dceb6e8547162d794e6046f7674c2f25ca88c8 100644 (file)
@@ -235,6 +235,10 @@ BasePrintLibVSPrint (
       // Handle each argument type\r
       //\r
       switch (FormatCharacter) {\r
+      case 'p':\r
+        if (sizeof (VOID *) > 4) {\r
+          Flags |= LONG_TYPE;\r
+        }\r
       case 'X':\r
         Flags |= PREFIX_ZERO;\r
         //\r
@@ -247,7 +251,7 @@ BasePrintLibVSPrint (
         //\r
       case 'd':\r
         if ((Flags & LONG_TYPE) == 0) {\r
-          Value = (VA_ARG (Marker, INTN));\r
+          Value = (VA_ARG (Marker, int));\r
         } else {\r
           Value = VA_ARG (Marker, INT64);\r
         }\r
@@ -275,7 +279,7 @@ BasePrintLibVSPrint (
           Radix = 16;\r
           Comma = FALSE;\r
           if ((Flags & LONG_TYPE) == 0 && Value < 0) {\r
-            Value = (UINTN)Value;\r
+            Value = (unsigned int)Value;\r
           }\r
         }\r
         //\r