Opened 10 years ago

Closed 10 years ago

#6963 closed defect (fixed)

Mythfronted segfaults on exitprompt on windows

Reported by: Jonathan Martens <jonathan@…> Owned by: Isaac Richards
Priority: minor Milestone: 0.22
Component: MythTV - General Version: head
Severity: medium Keywords:
Cc: Ticket locked: no

Description

After pressing escape to exit mythfrontend in Windows a segfault occurs:

2009-09-01 20:33:23.687 mythfrontend version: trunk [21621] www.mythtv.org

2009-09-01 20:37:57.703 MSqlQuery::exec() "SELECT data FROM settings WHERE value = 'OverrideExitMenu?' AND hostname = 'LPT-093' ;" 2009-09-01 20:37:57.703 Unable to load window 'MythPopupBox?' from base 2009-09-01 20:37:57.703 Can't create Exit Prompt dialog?

Attached is also the gdb backtrace.

Attachments (5)

gdb.txt (6.0 KB) - added by Jonathan Martens <jonathan@…> 10 years ago.
gdb backtrace
base.xml (970 bytes) - added by Jonathan Martens <jonathan@…> 10 years ago.
G.A.N.T base.xml
mythtv-frontend.log.zip (53.3 KB) - added by Jonathan Martens <jonathan@…> 10 years ago.
mythfrontend log file (zipped because of size limits)
base.2.xml (33.2 KB) - added by Jonathan Martens <jonathan@…> 10 years ago.
default base.xml file
6963-cpsimple.patch (549 bytes) - added by Jeff Lu <jll544@…> 10 years ago.
patch cpsimple to handle preexisting directory

Download all attachments as: .zip

Change History (14)

Changed 10 years ago by Jonathan Martens <jonathan@…>

Attachment: gdb.txt added

gdb backtrace

comment:1 Changed 10 years ago by Jonathan Martens <jonathan@…>

It seems other pop-ups do also not display:

For instance ejecting a disc from the optical disk drive:

2009-09-01 20:49:17.125 MediaMonitor::selectDrivePopup(Select removable media to eject or insert) - One suitable device 2009-09-01 20:49:17.125 Unlocking disk Audio CD, then eject()ing 2009-09-01 20:49:17.125 Unable to load window 'MythConfirmationDialog?' from base 2009-09-01 20:49:17.125 ShowOkPopup?('You may safely remove Audio CD') - Couldn't Create() Dialog

Or trying to import music:

2009-09-01 20:49:35.484 Unable to load window 'MythBusyDialog?' from base 2009-09-01 20:49:35.500 MSqlQuery::exec("SELECT CONCAT_WS('/', path, filename), date_modified FROM music_songs LEFT JOIN music_directories ON music_songs.directory_id=music_directories.directory_id WHERE filename NOT LIKE ('%:%')") 2009-09-01 20:49:35.500 Unable to load window 'MythProgressDialog?' from base

comment:2 Changed 10 years ago by stuartm

Which theme? Can you verify that those window definitions appear in {theme}/base.xml or default(-wide)/base.xml? (They should for all current trunk themes).

Changed 10 years ago by Jonathan Martens <jonathan@…>

Attachment: base.xml added

G.A.N.T base.xml

comment:3 in reply to:  2 Changed 10 years ago by Jonathan Martens <jonathan@…>

Replying to stuartm:

Which theme? Can you verify that those window definitions appear in {theme}/base.xml or default(-wide)/base.xml? (They should for all current trunk themes).

G.A.N.T and no they do not seem present as base.xml is very small, have attached it.

comment:4 Changed 10 years ago by stuartm

What about default/base.xml? We should be falling back there. Can't you post the full log?

Changed 10 years ago by Jonathan Martens <jonathan@…>

Attachment: mythtv-frontend.log.zip added

mythfrontend log file (zipped because of size limits)

Changed 10 years ago by Jonathan Martens <jonathan@…>

Attachment: base.2.xml added

default base.xml file

comment:5 in reply to:  4 ; Changed 10 years ago by Jonathan Martens <jonathan@…>

Replying to stuartm:

What about default/base.xml? We should be falling back there.

The dialogs seem present in there.

Replying to stuartm:

Can't you post the full log?

Yes, attached.

Changed 10 years ago by Jeff Lu <jll544@…>

Attachment: 6963-cpsimple.patch added

patch cpsimple to handle preexisting directory

comment:6 in reply to:  5 ; Changed 10 years ago by Jeff Lu <jll544@…>

Replying to Jonathan Martens <jonathan@snetram.nl>:

Replying to stuartm:

What about default/base.xml? We should be falling back there.

The dialogs seem present in there.

Patch attached...

The log shows several instances of not finding themes/default/base.xml. On windows, this usually happens when the default theme is incorrectly installed into themes/default/default instead of themes/default.

This occurs because 'make install' adds four files (from mythwelcome) to themes/default before installing the themes themselves. Once the install reaches themes, the already-existing directory causes incorrect nesting into themes/default/default.

The patch modifies the cpsimple script (which is used only in windows) to detect and workaround this situation.

comment:7 in reply to:  6 Changed 10 years ago by Jonathan Martens <jonathan@…>

Replying to Jeff Lu <jll544@yahoo.com>:

Patch attached...

Will try later today and report back if that fixes my problems.

The log shows several instances of not finding themes/default/base.xml. On windows, this usually happens when the default theme is incorrectly installed into themes/default/default instead of themes/default.

This occurs because 'make install' adds four files (from mythwelcome) to themes/default before installing the themes themselves. Once the install reaches themes, the already-existing directory causes incorrect nesting into themes/default/default.

Strange that I did not have these problems before then as the win32-packager script worked great in the past.

comment:8 Changed 10 years ago by Jonathan Martens <jonathan@…>

The patch works, all mentioned pop-up dialogs display after applying the patch and re-running make install, so it would be nice if it could be applied to trunk. Thanks in advance.

comment:9 Changed 10 years ago by markk

Resolution: fixed
Status: newclosed

(In [21657]) Improved theme installation for the windows build. Closes #6963.

Note: See TracTickets for help on using tickets.