Several additions and bug fixes.

diff --git a/tools/winapi_check/winapi.pm b/tools/winapi_check/winapi.pm
index 87657b0..ec47a45 100644
--- a/tools/winapi_check/winapi.pm
+++ b/tools/winapi_check/winapi.pm
@@ -226,9 +226,10 @@
 
     for my $internal_name ($win32api->all_internal_functions) {
 	my $module16 = $win16api->function_internal_module($internal_name);
+	my $module32 = $win16api->function_internal_module($internal_name);
 	if(defined($module16) &&
-	   !$win16api->function_stub($internal_name) && 
-	   !$win32api->function_stub($internal_name))
+	   !$win16api->is_function_stub_in_module($module16, $internal_name) &&
+	   !$win32api->is_function_stub_in_module($module32, $internal_name))
 	{
 	    $win16api->found_shared_internal_function($internal_name);
 	    $win32api->found_shared_internal_function($internal_name);
@@ -248,7 +249,7 @@
     my $win32api = shift;
 
     my @files = map {
-	s%^\./%%;
+	s%^$wine_dir/%%;
 	if(&$file_type($_) eq "winelib") {
 	    $_;
 	} else {
@@ -403,7 +404,7 @@
 		$internal_name = $external_name;
 	    }
 
-	    $$function_stub{$external_name} = 1;
+	    $$function_stub{$module}{$external_name} = 1;
 	    if(!$$function_internal_name{$external_name}) {
 		$$function_internal_name{$external_name} = $internal_name;
 	    } else {
@@ -691,8 +692,22 @@
 sub all_functions_stub {
     my $self = shift;
     my $function_stub = \%{$self->{FUNCTION_STUB}};
+    my $modules = \%{$self->{MODULES}};
 
-    return sort(keys(%$function_stub));
+    my @stubs = ();
+    foreach my $module (keys(%$modules)) {
+	push @stubs, keys(%{$$function_stub{$module}});
+    }
+    return sort(@stubs);
+}
+
+sub all_functions_stub_in_module {
+    my $self = shift;
+    my $function_stub = \%{$self->{FUNCTION_STUB}};
+
+    my $module = shift;
+
+    return sort(keys(%{$$function_stub{$module}}));
 }
 
 sub all_internal_functions_found {
@@ -826,13 +841,31 @@
     return $$function_external_module{$name};
 }
 
-sub function_stub {
+sub is_function_stub {
+    my $self = shift;
+    my $function_stub = \%{$self->{FUNCTION_STUB}};
+    my $modules = \%{$self->{MODULES}};
+
+    my $module = shift;
+    my $name = shift;
+
+    foreach my $module (keys(%$modules)) {
+	if($$function_stub{$module}{$name}) {
+	    return 1;
+	}
+    }
+
+    return 0;
+}
+
+sub is_function_stub_in_module {
     my $self = shift;
     my $function_stub = \%{$self->{FUNCTION_STUB}};
 
+    my $module = shift;
     my $name = shift;
 
-    return $$function_stub{$name};
+    return $$function_stub{$module}{$name};
 }
 
 sub found_internal_function {