Bug 317784

Summary: Cannot set date and time automatically
Product: [Applications] systemsettings Reporter: marciocha666 <marciocha666>
Component: kcm_clockAssignee: Paul Campbell <paul>
Status: RESOLVED FIXED    
Severity: major CC: rene.bernhardsgruetter
Priority: NOR    
Version: 4.10.1   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description marciocha666 2013-04-03 15:02:48 UTC
I am using Kubuntu 13.04 Beta 1, KDE 4.10.1, 3.8.0-16 kernel.
I've been trying to set System Settings > Date & Time > Set date and time automatically. I attempt to check the box, but after clicking "Apply" and OK there is crash every time i'm doing it.




Reproducible: Always

Steps to Reproduce:
1: right click on the time widget
2: choose adjust date and time
3: click on set date and time automatically (or if already clicked change an entry)
4: click on apply and OK
7: error message "unable to authenticate/execute the action 6,"
8: CRASH
Actual Results:  
crash

Expected Results:  
just work
Comment 1 René 2013-04-18 19:51:37 UTC
Hi, 

I have the same bug here. I'm using Ubuntu 13.04 Beta (but neither GNOME nor Unity running -- only KDE 4.10.2, amd64). 

The bug only occurs if you:
1. Open Date & Time settings
2. Enable or disable the NTP checkbox (this takes a few seconds to save the settings and update the time (I guess it does that) if you enable the checkbox).
3. Click on Overview to go back or close the window.
4. => AND then click on the Popup which asks you to save the changes <=

If you click instead on Cancel, Date & Time doesn't crash (but the changes are still saved).

My crash info:
Application: System Settings (systemsettings), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f8e0ecbd7c0 (LWP 8108))]

Thread 2 (Thread 0x7f8dee4c4700 (LWP 8130)):
#0  0x00007f8e0bcc0b0d in read () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f8e0183136c in ?? () from /usr/lib/nvidia-310/libGL.so.1
#2  0x00007f8dfe9b7bf7 in ?? () from /usr/lib/nvidia-310/tls/libnvidia-tls.so.310.44
#3  0x00007f8e04d326cf in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f8e04cf3d3c in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f8e04cf4175 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6  0x00007f8e04cf46ba in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#7  0x00007f8dee7b44f6 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#8  0x00007f8e04d17eb5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#9  0x00007f8e018323b4 in ?? () from /usr/lib/nvidia-310/libGL.so.1
#10 0x00007f8e051c6f8e in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#11 0x00007f8e0bccee1d in clone () from /lib/x86_64-linux-gnu/libc.so.6

Thread 1 (Thread 0x7f8e0ecbd7c0 (LWP 8108)):
[KCrash Handler]
#5  0x00007f8e0c4306a1 in QObject::connect(QObject const*, char const*, QObject const*, char const*, Qt::ConnectionType) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007f8e0c435e1a in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#7  0x00007f8e0c435f66 in QTimer::singleShot(int, QObject*, char const*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#8  0x00007f8def0a94b6 in ?? () from /usr/lib/kde4/kcm_clock.so
#9  0x00007f8e0e3db807 in KCModuleProxy::save() () from /usr/lib/libkcmutils.so.4
#10 0x00007f8e0e1b35b3 in ModuleView::moduleSave(KCModuleProxy*) () from /usr/lib/libsystemsettingsview.so.2
#11 0x00007f8e0e1b37eb in ModuleView::resolveChanges(KCModuleProxy*) () from /usr/lib/libsystemsettingsview.so.2
#12 0x00007f8df0bad545 in ?? () from /usr/lib/kde4/icon_mode.so
#13 0x00007f8e0c42d0ef in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#14 0x00007f8e0d076152 in QAction::triggered(bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#15 0x00007f8e0d077580 in QAction::activate(QAction::ActionEvent) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#16 0x00007f8e0d43b9ef in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#17 0x00007f8e0d43bc9c in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#18 0x00007f8e0d4f877a in QToolButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#19 0x00007f8e0d0c9a89 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#20 0x00007f8e0d07c8ec in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#21 0x00007f8e0d07fa33 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#22 0x00007f8e0dd89af6 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#23 0x00007f8e0c41863e in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#24 0x00007f8e0d082933 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#25 0x00007f8e0d0f7ec4 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#26 0x00007f8e0d0f6ef1 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#27 0x00007f8e0d1220b2 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#28 0x00007f8e04cf3f05 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#29 0x00007f8e04cf4248 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#30 0x00007f8e04cf4304 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#31 0x00007f8e0c447016 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#32 0x00007f8e0d1221ae in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#33 0x00007f8e0c41738f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#34 0x00007f8e0c417618 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#35 0x00007f8e0c41ccf6 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#36 0x000000000040aa2e in ?? ()
#37 0x00007f8e0bbf6ea5 in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6
#38 0x000000000040aa85 in _start ()

René
Comment 2 David Edmundson 2015-02-27 19:02:37 UTC
Git commit b6ae01ca8ea776c97cc57836401ca9696e2529e8 by David Edmundson.
Committed on 14/02/2015 at 13:50.
Pushed by davidedmundson into branch 'master'.

Add systemd support into the clock KCM as an optional dependency

The current time setting helper is incredibly broken.

It manually tries to run a range of NTP utilities, all of which are
deprecated.

We can just call timedated directly and cut out the middleman as it has
uses polkit anyway.

This is currently an optional dependency, and the original helper still
exists. It makes the code messy, but we have users to support for now.

Detection is done at runtime
Related: bug 196316, bug 311286, bug 319072, bug 337012, bug 339582, bug 241817, bug 178968, bug 320456, bug 317999, bug 337659
REVIEW: 122400

M  +5    -1    kcms/dateandtime/CMakeLists.txt
M  +22   -12   kcms/dateandtime/dateandtime.ui
M  +44   -30   kcms/dateandtime/dtime.cpp
M  +2    -1    kcms/dateandtime/dtime.h
M  +80   -7    kcms/dateandtime/main.cpp
M  +5    -1    kcms/dateandtime/main.h
A  +43   -0    kcms/dateandtime/timedated1.xml

http://commits.kde.org/plasma-desktop/b6ae01ca8ea776c97cc57836401ca9696e2529e8