Respect the fact, that the driver can return NULL-pointer, instead of a string having 0 characters!
(makes third-party drivers compatibility better).
This piece left from previous commit.
Modified: trunk/reactos/ntoskrnl/io/pnpmgr.c

Modified: trunk/reactos/ntoskrnl/io/pnpmgr.c
--- trunk/reactos/ntoskrnl/io/pnpmgr.c	2005-12-08 10:30:08 UTC (rev 19963)
+++ trunk/reactos/ntoskrnl/io/pnpmgr.c	2005-12-08 11:54:01 UTC (rev 19964)
@@ -1857,7 +1857,7 @@
    }
    else
    {
-      DPRINT("IopInitiatePnpIrp() failed (Status %x)\n", Status);
+      DPRINT("IopInitiatePnpIrp() failed (Status %x) or IoStatusBlock.Information=NULL\n", Status);
       DeviceNode->BootResources = NULL;
    }
 
@@ -1868,14 +1868,14 @@
       &IoStatusBlock,
       IRP_MN_QUERY_RESOURCE_REQUIREMENTS,
       NULL);
-   if (NT_SUCCESS(Status))
+   if (NT_SUCCESS(Status) && IoStatusBlock.Information)
    {
       DeviceNode->ResourceRequirements =
          (PIO_RESOURCE_REQUIREMENTS_LIST)IoStatusBlock.Information;
    }
    else
    {
-      DPRINT("IopInitiatePnpIrp() failed (Status %x)\n", Status);
+      DPRINT("IopInitiatePnpIrp() failed (Status %x) or IoStatusBlock.Information=NULL\n", Status);
       DeviceNode->ResourceRequirements = NULL;
    }