ntdll: rtlstr.c: Implement checking for control characters in RtlIsTextUnicode [try 4]
royshea at gmail.com
Fri Jun 20 10:36:24 CDT 2008
> Does anyone have feedback on whether they believe the tests for normal
> control characters vs reversed control characters should be mutually
I took a look at the documentation. My read is that the tests are not
Given your current version and my reading of the documentation you would
need two separate goto targets: control_char_done and
Note that all of this is based on my reading of the documentation.
You'll need to dig into some Windows testing. Off the top of my head I
would try a set of four tests:
Flags IS_TEXT_UNICODE_CONTROLS and IS_TEXT_UNICODE_REVERSE_CONTROLS set
and then pass in a string:
- with no controls
- with unicode control
- with reversed unicode control
- with both
This teases out if your IS_TEXT_UNICODE_CONTROLS needs to expand its
!(out_flags & IS_TEXT_UNICODE_REVERSE_SIGNATURE)
and provides evidence as to the mutual exclusivity of the two tests.
For full Windows compliance you could also test:
- only the IS_TEXT_UNICODE_CONTROLS flag and a string with reversed
unicode controls (does it set the flag for reversed controls?)
- only the IS_TEXT_UNICODE_REVERSE_CONTROLS flag and a string with
unicode controls (does it set the flag for controls?)
One additional point. The documentation explicitly notes that:
"Only flags that are set upon input to the function are significant upon
Based on the documentation, setting extra flags should not be a problem.
But for full conformance with Windows, you may not have this
Best of luck!
More information about the wine-devel