RegQueryValueExW retrieves Unicode strings but the size must be specified in
bytes. Fixes bug 770.
Modified: trunk/reactos/lib/comctl32/comctl32undoc.c

Modified: trunk/reactos/lib/comctl32/comctl32undoc.c
--- trunk/reactos/lib/comctl32/comctl32undoc.c	2005-09-16 18:18:48 UTC (rev 17887)
+++ trunk/reactos/lib/comctl32/comctl32undoc.c	2005-09-16 19:47:44 UTC (rev 17888)
@@ -682,17 +682,17 @@
 
     /* get values from key 'MRUList' */
     if (newkey) {
-	datasize = mp->extview.nMaxItems + 1;
+	datasize = (mp->extview.nMaxItems + 1) * sizeof(WCHAR);
 	if((err=RegQueryValueExW( newkey, strMRUList, 0, &type,
 				  (LPBYTE)mp->realMRU, &datasize))) {
-	    /* not present - set size to 1 (will become 0 later) */
-	    datasize = 1;
+	    /* not present - set size to 2 (will become 0 later) */
+	    datasize = 2;
 	    *mp->realMRU = 0;
 	}
 
 	TRACE("MRU list = %s, datasize = %ld\n", debugstr_w(mp->realMRU), datasize);
 
-	mp->cursize = datasize - 1;
+	mp->cursize = datasize / sizeof(WCHAR) - 1;
 	/* datasize now has number of items in the MRUList */
 
 	/* get actual values for each entry */