Fix the icon resource ids (most were off by one).
Fix IExtractIcon_{GetIconLocation,Extract} to use -ve icon resource
ids and fix bugs relating to confusion between resource ids and the
system imagelist indicies.
Extend the system imagelist initialization hack to load both +ve and
-ve resource ids.
Add a printer icon (that'll be used by an upcoming printer folder
patch).

diff --git a/dlls/shell32/classes.c b/dlls/shell32/classes.c
index f5e8c38..96635f9 100644
--- a/dlls/shell32/classes.c
+++ b/dlls/shell32/classes.c
@@ -223,7 +223,12 @@
 	  ret = HCR_RegGetDefaultIconW(hkey, szDest, len, dwNr);
 	  RegCloseKey(hkey);
 	}
-	TRACE("-- %s %li\n", debugstr_w(szDest), *dwNr );
+
+        if(ret)
+            TRACE("-- %s %li\n", debugstr_w(szDest), *dwNr );
+        else
+            TRACE("-- not found\n");
+
 	return ret;
 }