Regression in lstrcmpiA (occurred in late June, NLS related)

Jeff Smith whydoubt at yahoo.com
Thu Oct 2 09:49:05 CDT 2003


--- Dmitry Timoshkov <dmitry at baikal.ru> wrote:
> "Jakob Eriksson" <jakob at vmlinux.org> wrote:
> 
> > >    Dmitry> The source of all of this is the difference between MS and
> > >    Dmitry> unicode.org sort weight tables. There is no an easy way to make
> > >    Dmitry> unicode.org database look like the MS one unfortunately...
> > >
> > >Can we perhaps write a tool that dumps those tables on a running MS system
> > >as header files that wine can use? Would this be allowable?
> > >  
> > >
> > 
> > Wouldn't the clean-room way be to write regression tests that pass on 
> > Windows?
> 
> That's the approach we have chosen so far.
> 
> -- 
> Dmitry.

You mean something like:

=======================================================================
#include <windows.h>

unsigned char test_strings[96][2];

int xyz (const void * y, const void * z)
{
	return lstrcmpi(y, z);
}

int main(int argc, char *argv[])
{
	int i;

	for (i=0; i<96; i++)
		sprintf (test_strings[i], "%c", i+0x20);
	qsort (&test_strings[0][0], 96, 2, xyz);
	for (i=0; i<96; i++) {
		printf ("  0x%02x '%s'", test_strings[i][0], test_strings[i]);
		if ((i == 95) || (lstrcmpi(test_strings[i], test_strings[i+1])))
			printf ("\n");
	}

	return 0;
}
=======================================================================
[On Windows 2000 Pro]
  0x7f '&#8962;'
  0x27 '''
  0x2d '-'
  0x20 ' '
  0x21 '!'
  0x22 '"'
  0x23 '#'
  0x24 '$'
  0x25 '%'
  0x26 '&'
  0x28 '('
  0x29 ')'
  0x2a '*'
  0x2c ','
  0x2e '.'
  0x2f '/'
  0x3a ':'
  0x3b ';'
  0x3f '?'
  0x40 '@'
  0x5b '['
  0x5c '\'
  0x5d ']'
  0x5e '^'
  0x5f '_'
  0x60 '`'
  0x7b '{'
  0x7c '|'
  0x7d '}'
  0x7e '~'
  0x2b '+'
  0x3c '<'
  0x3d '='
  0x3e '>'
  0x30 '0'
  0x31 '1'
  0x32 '2'
  0x33 '3'
  0x34 '4'
  0x35 '5'
  0x36 '6'
  0x37 '7'
  0x38 '8'
  0x39 '9'
  0x61 'a'  0x41 'A'
  0x62 'b'  0x42 'B'
  0x43 'C'  0x63 'c'
  0x44 'D'  0x64 'd'
  0x45 'E'  0x65 'e'
  0x66 'f'  0x46 'F'
  0x47 'G'  0x67 'g'
  0x48 'H'  0x68 'h'
  0x69 'i'  0x49 'I'
  0x4a 'J'  0x6a 'j'
  0x6b 'k'  0x4b 'K'
  0x6c 'l'  0x4c 'L'
  0x6d 'm'  0x4d 'M'
  0x6e 'n'  0x4e 'N'
  0x6f 'o'  0x4f 'O'
  0x50 'P'  0x70 'p'
  0x51 'Q'  0x71 'q'
  0x72 'r'  0x52 'R'
  0x53 'S'  0x73 's'
  0x74 't'  0x54 'T'
  0x75 'u'  0x55 'U'
  0x76 'v'  0x56 'V'
  0x77 'w'  0x57 'W'
  0x58 'X'  0x78 'x'
  0x59 'Y'  0x79 'y'
  0x5a 'Z'  0x7a 'z'
=======================================================================

 -- Jeff Smith



__________________________________
Do you Yahoo!?
The New Yahoo! Shopping - with improved product search
http://shopping.yahoo.com



More information about the wine-devel mailing list