[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Xlog-discussion] xlog-0.9.8
From: |
Alexandru Csete |
Subject: |
[Xlog-discussion] xlog-0.9.8 |
Date: |
Fri, 15 Oct 2004 10:57:21 +0200 (CEST) |
User-agent: |
SquirrelMail/1.4.3a |
Greetings,
I have done some testing of the latest release of xlog and I have found some
weak
points, some of which are quite critical. I will describe each of them in the
following, including how to reproduce them.
1. When starting xlog for the first time, ie. no ~/.xlog/, the 'xlog - setup'
dialog
comes up. After pressing 'OK' the dialog didisappears and xlog crashes with:
I/O warning : failed to load external entity "/home/alexc/.xlog/preferences.xml"
Creating a new preferences file...
Segmentation fault
~/.xlog/ is created with log.xlog and preferences.xml and next time I start xlog
everthing seems fine; well, maybe except that only the 'NR' field is shown for
the
newly created empty log (I don't know whether this is normal).
2. Next, go to Settings -> Preferences -> Hamlib and
- Enable Hamlib
- Enble polling (500msec or any val. > 0)
- Show s-meter
Pressing 'OK' and the s-meter shows a "noisy image" and on the command line I
get
the following:
(xlog:3391): Gdk-CRITICAL **: file gdkdraw.c: line 411 (gdk_draw_rectangle):
assertion `GDK_IS_DRAWABLE (drawable)' failed
(xlog:3391): Gdk-CRITICAL **: file gdkdraw.c: line 650 (gdk_draw_drawable):
assertion `GDK_IS_DRAWABLE (drawable)' failed
After the next update (polling), the s-meter display looks fine. I have seen
this
behaviour before (not in xlog) and I think it is because you are trying to draw
on a
GdkDrawable before it is exposed, which is dangereous, since various x-resources
related to the GdkDrawable are not created until it is exposed for the first
time.
3. Next, Settings -> Preferences -> Hamlib -> Disable Hamlib. Pressing 'OK'
gives:
(xlog:3391): GLib-CRITICAL **: file gstrfuncs.c: line 1728 (g_ascii_strcasecmp):
assertion `s2 != NULL' failed
(xlog:3391): GLib-CRITICAL **: file gstrfuncs.c: line 1727 (g_ascii_strcasecmp):
assertion `s1 != NULL' failed
4a. Exit xlog and restart. In the preferences enable hamlib, enable polling but
leave the timeout at 0 msec. and show the s-meter and the frequency. Press 'OK'
and:
(xlog:3410): Gdk-CRITICAL **: file gdkdraw.c: line 411 (gdk_draw_rectangle):
assertion `GDK_IS_DRAWABLE (drawable)' failed
(xlog:3410): Gdk-CRITICAL **: file gdkdraw.c: line 650 (gdk_draw_drawable):
assertion `GDK_IS_DRAWABLE (drawable)' failed
and the funny image (attached xlog-no-clock.png) with the xlog logo instead of
s-meter digits appear :)
Disable hamlib and exit.
4b. Do the same as in 4a, but also enable the clock on the status bar. Pres
'OK':
(xlog:10472): Gdk-CRITICAL **: file gdkdraw.c: line 411 (gdk_draw_rectangle):
assertion `GDK_IS_DRAWABLE (drawable)' failed
(xlog:10472): Gdk-CRITICAL **: file gdkdraw.c: line 650 (gdk_draw_drawable):
assertion `GDK_IS_DRAWABLE (drawable)' failed
and again, a strange s-meter is shown (see xlog-with-clock.png).
Now, disable hamlib in the preferences and press'OK':
(xlog:10460): GLib-CRITICAL **: file gstrfuncs.c: line 1728
(g_ascii_strcasecmp):
assertion `s2 != NULL' failed
Then go back to the Preferences, General and disable the clock on statusbar =>
segmentation fault
Note that the crash does not happen if polling is greater than 0 msec! although
the
glib critical still comes.
That's all for now. I will report any further findings as they come.
Cheers,
Alex
OZ9AEC
xlog-no-clock.png
Description: PNG image
xlog-with-clock.png
Description: PNG image