Opened 10 years ago

Closed 10 years ago

Last modified 12 months ago

#4403 closed defect (fixed)

GUI: "Help" dialog causes crash @ 320x200

Reported by: sunmax Owned by: sev-
Priority: high Component: GUI
Keywords: Cc:
Game:

Description

When you choose "help" from GMM on a scumm based game
(eg. indy4, samnmax, etc.) running @ 320x200, it will crash:

Widget <ScummHelp.Close> has y > 200!
Error: assertion `isValidRect()' failed in ../../../common/rect.h:

Max (Horn) was able to reproduce it on a SDL backend,
please get in touch with him if you need details on that.

Ticket imported from: #2820514. Ticket imported from: bugs/4403.

Attachments (3)

classic_320x200.log (10.3 KB ) - added by lordhoto 10 years ago.
valgrind log for classic theme at 320x200
modern_320x200.log (16.7 KB ) - added by lordhoto 10 years ago.
valgrind log for modern theme at 320x200
classic_320x200.png (19.1 KB ) - added by lordhoto 10 years ago.
screenshot of the missing 'outlines' with scummclassic at 320x200

Download all attachments as: .zip

Change History (10)

comment:1 by fingolfin, 10 years ago

Summary: help crash on backend @ 320x200GUI: "Help" dialog causes crash @ 320x200

comment:2 by lordhoto, 10 years ago

I wasn't able to reproduce the "isValidRect" assertion, but I noticed that the dialog is both in 320x240 and in 320x200 unusable for me. I can't click the buttons. That happens in both modern and classic theme for me. It seems that this is caused by invalid memory writes. I will attach valgrind logs for both modern and classic theme in 320x200.

Somehow the render does not only draw within the given bounds (320x200), but also draws outside of it. Easily noticeable in classic theme, where the right and bottom gray line of the dialog is missing.

by lordhoto, 10 years ago

Attachment: classic_320x200.log added

valgrind log for classic theme at 320x200

by lordhoto, 10 years ago

Attachment: modern_320x200.log added

valgrind log for modern theme at 320x200

comment:3 by lordhoto, 10 years ago

Just FYI I also dropped tanoku a line, maybe he knows how to fix all of the renderer properly, the VectorRendererSpec code could need some cleanup / comments :-/.

by lordhoto, 10 years ago

Attachment: classic_320x200.png added

screenshot of the missing 'outlines' with scummclassic at 320x200

comment:4 by SF/tanoku, 10 years ago

Hello gentlemen. This bug is caused because the beveled and rounded square outlines were being drawn on the outside of their shapes, instead of their inside. Revision 42529 changes this and adds a few changes to the STX files to the themes look mostly the same. However, I'm quite sure there have been some regressions (i.e. minor graphical glitches) because of the change.

If you were so kind to report them, I'll attempt to fix them. Feel free to open a new ticket and assign it to me, or just comment here.

Cheers.

comment:5 by SF/tanoku, 10 years ago

Resolution: fixed
Status: newclosed

comment:6 by SF/tanoku, 10 years ago

Actually, disregard that. That commit has been reverted and the bug is now fully fixed in revision 42537 with supposedly no regressions. Cheers.

comment:7 by digitall, 12 months ago

Component: --Unset--GUI
Note: See TracTickets for help on using tickets.