Zac Brown wrote: > Michael Karcher wrote: >> Am Donnerstag, den 19.06.2008, 12:52 -0700 schrieb Zac Brown: >>> - Because these tests are mutually exclusive, a single goto label suffices >>> for >>> breaking the loop. >> As written, your tests are not mutually exclusive. It could happen that >> flags has IS_TEXT_UNICODE_CONTROLS and IS_TEXT_UNICODE_REVERSE_CONTROLS, >> set and out_flags contains IS_TEXT_UNICODE_REVERSE_SIGNATURE. (If the >> caller doesn't provide flags, both flags are set, in fact!) In that >> case, both conditions of your if statements are true. >> >> I don't know whether that means that you need two goto targets or that >> your logic should be changed, but I suspect the latter. If you test for >> reversed control characters only I a reversed BOM was found, you should >> not test for non-reversed control characters if a reversed BOM was >> found, according to my intuition. >> >> Regards, >> Michael Karcher >> >> >> > Hmmm this is true. Added a test in the first if statement to do something > like: > > if((flags & IS_TEXT_UNICODE_CONTROL) && (out_flags & > IS_TEXT_UNICODE_SIGNATRUE)) > causes a wine test to fail. > > So either I need a goto at the end of the first if statement before the > closing > brace, or I need to adjust some other things in the code. > > Any thoughts from anyone on the proper way to approach this ;). I'd like to > get > this one done before try 10 (haha). > > -Zac > >
Actually I guess just make it an if..else..if would work too.