--- osl.c~	2002-10-18 14:25:26.000000000 -0400
+++ osl.c	2002-10-04 14:40:34.000000000 -0400
@@ -25,6 +25,7 @@
  *
  */
 
+#include "dsdt_table.h"
 #include <linux/config.h>
 #include <linux/kernel.h>
 #include <linux/slab.h>
@@ -206,7 +207,7 @@
 	if (!existing_table || !new_table)
 		return AE_BAD_PARAMETER;
 
-	*new_table = NULL;
+	*new_table = (strncmp(existing_table->signature, DSDT_SIG, 4)) ? NULL : (acpi_table_header *) AmlCode;
 	return AE_OK;
 }
 
