Jelajahi Sumber

LibBareMetal: Don't try to print characters from a null pointer

Andreas Kling 5 tahun lalu
induk
melakukan
dfa69b82b4
1 mengubah file dengan 4 tambahan dan 0 penghapusan
  1. 4 0
      Libraries/LibBareMetal/Output/kprintf.cpp

+ 4 - 0
Libraries/LibBareMetal/Output/kprintf.cpp

@@ -155,6 +155,8 @@ static void debugger_putch(char*&, char ch)
 
 
 extern "C" int dbgputstr(const char* characters, int length)
 extern "C" int dbgputstr(const char* characters, int length)
 {
 {
+    if (!characters)
+        return 0;
     for (int i = 0; i < length; ++i)
     for (int i = 0; i < length; ++i)
         debugger_out(characters[i]);
         debugger_out(characters[i]);
     return 0;
     return 0;
@@ -162,6 +164,8 @@ extern "C" int dbgputstr(const char* characters, int length)
 
 
 extern "C" int kernelputstr(const char* characters, int length)
 extern "C" int kernelputstr(const char* characters, int length)
 {
 {
+    if (!characters)
+        return 0;
     for (int i = 0; i < length; ++i)
     for (int i = 0; i < length; ++i)
         console_out(characters[i]);
         console_out(characters[i]);
     return 0;
     return 0;