[Bug 30115] Perfect World: Skills and items icons messed up

wine-bugs at winehq.org wine-bugs at winehq.org
Fri Mar 9 08:59:29 CST 2012


http://bugs.winehq.org/show_bug.cgi?id=30115

--- Comment #1 from Alexey Loukianov <mooroon2 at mail.ru> 2012-03-09 08:59:29 CST ---
Well, I had tracked this bug up to the differences in blit operation
implementation for compressed textures introduced by commits 156d24c6 and
a8427507. Problematic icons are stored (and blited) as surfaces in
WINED3DFMT_DXT1 format. Prior to commit 156d24c6 blits for such surfaces had
been handled in surface_cpu_bltfast(). After commit 156d24c6 wine had switched
into using surface_cpu_blt() function instead which hadn't been able to do
blits with defined destination rect in software for compressed surfaces at that
moment of time. Instead, surface_cpu_blt() had been trying to do the usual
width/height rect math and apply it to compressed texture which had been
causing access violations try to access memory regions outside the locked
surface part with the subsequent game crash as the consequence. 

After commit 156d24c6 surface_cpu_blt() had been extended to support
non-transforming block-based surfaces blits for compressed textures, and this
support seems to look very similar to one that had been working correctly
inside surface_cpu_bltfast(). Unfortunately something differs between those two
implementations and I can't tell what is the difference exactly ATM, but I'm
pretty sure that this difference is a bug trigger here. Going to investigate a
bit deeper and report back any findings I would come with.

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list