Description of problem: clic on date & time icone ..then crash Version-Release number of selected component (if applicable): Mageia6 RC How reproducible: Steps to Reproduce: 1. 2. 3.
Hi Patrick, Do I correctly understand that you tried to click on "Manage date and time" in a screen similar to this one http://doc.mageia.org/mcc/5/en/content/mcc-system.html and then MCC crashed? Please reproduce the crash and open a terminal/konsole right after the crash, become root and give the command: journalctl -ab > log.txt Then attach log.txt to this bug report. Thanks! Marja
Keywords: (none) => NEEDINFOSource RPM: (none) => drakxtoolsAssignee: bugsquad => mageiatoolsSummary: MCC date and time => MCC date and time crashCC: (none) => marja11
Created attachment 9356 [details] log.txt asked by Marja van Waes
just launch MCC in root mode clic on Manage date and time ... then it crashes
Created attachment 9357 [details] MCC screen
mai 29 22:06:49 localhost drakclock[2935]: ### Program is starting ### mai 29 22:06:50 localhost drakclock[2935]: launched command: systemctl is-active chronyd.service >/dev/null mai 29 22:06:51 localhost drakbug[2935]: ### Program is starting ### mai 29 22:06:53 localhost dbus[745]: [system] Activating via systemd: service name='org.freedesktop.hostname1' unit='dbus-org.freedesktop.hostname1.service' mai 29 22:06:53 localhost plasmashell[2491]: Parsing "exist Exec and ('/usr/bin/perl /usr/bin/drakbug --error Can't call method \"set_antialias\" on an undefined value at /usr/libexec/drakclock line 350. Perl's trace: drakbug::bug_handler() called from /usr/lib/perl5/vendor_perl/5.22.3/Gtk3.pm:524 Gtk3::__ANON__() called from /usr/lib/libDrakX/mygtk3.pm:1550 mygtk3::main() called from /usr/lib/libDrakX/ugtk3.pm:857 ugtk3::main() called from /usr/libexec/drakclock:230 --incident drakclock' =~ Exec)" gave: syntax error mai 29 22:06:53 localhost plasmashell[2491]: Parsing "exist Exec and ('perl /usr/bin/drakbug --error Can't call method \"set_antialias\" on an undefined value at /usr/libexec/drakclock line 350. Perl's trace: drakbug::bug_handler() called from /usr/lib/perl5/vendor_perl/5.22.3/Gtk3.pm:524 Gtk3::__ANON__() called from /usr/lib/libDrakX/mygtk3.pm:1550 mygtk3::main() called from /usr/lib/libDrakX/ugtk3.pm:857 ugtk3::main() called from /usr/libexec/drakclock:230 --incident drakclock' =~ Exec)" gave: syntax error Patrick, did you see the drakbug screen (a screen like this one http://doc.mageia.org/mcc/5/en/content/drakbug.html )?
Summary: MCC date and time crash => MCC drakclock crash (Can't call method \"set_antialias\" on an undefined value at /usr/libexec/drakclock line 350.)Keywords: NEEDINFO => (none)
yes, this kind of screen appeared that's why i logged the bug
(In reply to Marja van Waes from comment #5) > Can't call method \"set_antialias\" > on an undefined value at /usr/libexec/drakclock line 350. This means that the Cairo object is undefined when Repaint() is called, which makes little sense to me. I cannot reproduce the issue.
CC: (none) => LpSolit
There's nothing magic: You use a global variable ($cairo) that isn't initialized early enough, depending on gtk+ order of signals which can vary. Ie if a call to Repaint() happens before a call to Draw(), then $cairo will be undefined. Eg if any of the following happens before first draw() call: - DrawingArea's 'motion_notify_event' - any of the SpinButton event is fired - $timer happens too early (120ms after startup), thus it will break if startup takes too much time
CC: (none) => thierry.vignaud
Created attachment 9363 [details] try to workaround mga#20956 You can try this patch. To apply against /usr/libexec/drakconf on a live system
It's indeed easily reproducable by reducing the 120ms timer
commit d5d6d77e981dbe8a514d6b48ced4ed680bad0abf Author: Thierry Vignaud <thierry.vignaud@...> Date: Tue May 30 18:10:03 2017 +0200 fix crash introduced in 17.77 (mga#20956) Depending on machine speed/slowness, signals will not be fired in the order expected and Repaint() will be called before global variable $cairo is set by draw(). This can be reproduced by making $timer to happens much faster than every 120ms so that it happens before the first call to draw() This workaround fix the bug introduced in commit 1a30f422b41250e338d2c1d209aec1b64204c8e0 But it would probably be saner to get rid of the $cairo global variable and to create a Cairo context in every Repaint() caller instead... --- Commit Link: http://gitweb.mageia.org/software/drakx/commit/?id=d5d6d77e981dbe8a514d6b48ced4ed680bad0abf
Fixed in git
Status: NEW => RESOLVEDResolution: (none) => FIXED