shlwapi: optimise path functions

Dimitrie O. Paun dpaun at rogers.com
Sat Nov 29 19:23:32 CST 2003


On November 29, 2003 06:27 pm, Andrew de Quincey wrote:
> I've replaced the calls to CharNextA()/CharNextW() with array increments
> and a local static function. This knocks 3.5 seconds off the file open
> dialogue in IDA.

Well, I'm not sure this is worth doing. First off, we're not fixing any
app that makes use of CharNext{A,W}(). Second, why is your static method
any faster than the real CharNextA()? Third, it's not correct to replace
CharNextW() with an array increment. While it is true that currently our
CharNextW() simply does the same thing, it should be fixed in the long
run to properly deal with Unicode Surrogate Pairs:

    http://uk.geocities.com/BabelStone1357/Unicode/surrogates.html

In other words, I don't think the patch is acceptable. What I'd suggest:
  -- figure out why the real CharNextA() is slow, and try to fix that
  -- figure out why it takes so long to call CharNextW()

-- 
Dimi.




More information about the wine-devel mailing list