Package: devilspie Version: 0.22-1 Severity: important The following configuration recently (in the past week or so) started to cause devilspie to crash. Interestingly when run with -d or -l it no longer crashes. This is without the relevant windows open. I've included the configuration file, a backtrace and output from -d.
$ cat ~/.devilspie/smtp-port-forwards.ds (if (contains (application_name) "localhost:20025:localhost:25 yagan.indymedia.org")(begin (set_workspace 4))) (if (contains (application_name) "localhost:40025:localhost:25 master.debian.org")(begin (set_workspace 4))) (if (contains (application_name) "localhost:10025:localhost:25 bonedaddy.net")(begin (set_workspace 4))) (if (contains (application_name) "localhost:30025:localhost:25 axxs.org")(begin (set_workspace 4))) $ gdb --args devilspie GNU gdb (GDB) 7.0-debian Copyright (C) 2009 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/bin/devilspie...done. (gdb) r Starting program: /usr/bin/devilspie [Thread debugging using libthread_db enabled] got eof Program received signal SIGSEGV, Segmentation fault. 0x0000000000405fbe in e_sexp_term_eval (f=0x6450c0, t=0x61d480) at e-sexp.c:710 710 r = t->value.func.sym->f.func(f, t->value.func.termcount, argv, t->value.func.sym->data); (gdb) thread apply all bt full Thread 1 (Thread 0x7ffff7fc77d0 (LWP 8699)): #0 0x0000000000405fbe in e_sexp_term_eval (f=0x6450c0, t=0x61d480) at e-sexp.c:710 r = 0x0 i = 1 __PRETTY_FUNCTION__ = "e_sexp_term_eval" #1 0x0000000000405f94 in e_sexp_term_eval (f=0x6450c0, t=0x61d440) at e-sexp.c:706 r = <value optimized out> i = 1 __PRETTY_FUNCTION__ = "e_sexp_term_eval" #2 0x0000000000406228 in term_eval_if (f=0x6450c0, argc=2, argv=0x648940, data=0x736f686c61636f6c) at e-sexp.c:639 r = <value optimized out> #3 0x0000000000405f33 in e_sexp_term_eval (f=0x6450c0, t=0x61d400) at e-sexp.c:700 r = <value optimized out> i = <value optimized out> __PRETTY_FUNCTION__ = "e_sexp_term_eval" #4 0x000000000040610b in e_sexp_eval (f=0x6450c0) at e-sexp.c:1227 __PRETTY_FUNCTION__ = "e_sexp_eval" #5 0x0000000000403fe0 in run_sexp (sexp=0x6450c0, window=0x0) at devilspie.c:71 No locals. #6 0x00007ffff7424acd in IA__g_list_foreach (list=<value optimized out>, func=0x403fd0 <run_sexp>, user_data=0x6358c0) at /tmp/buildd/glib2.0-2.22.3/glib/glist.c:789 next = 0x61cce0 #7 0x00007ffff76be3ed in IA__g_closure_invoke (closure=0x63dab0, return_value=0x0, n_param_values=2, param_values=0x6360d0, invocation_hint=0x7fffffffd9a0) at /tmp/buildd/glib2.0-2.22.3/gobject/gclosure.c:767 marshal = 0x7ffff76ca120 <IA__g_cclosure_marshal_VOID__OBJECT> marshal_data = 0x0 __PRETTY_FUNCTION__ = "IA__g_closure_invoke" #8 0x00007ffff76d1cdb in signal_emit_unlocked_R (node=0x6127e0, detail=0, instance=0x63f820, emission_return=0x0, instance_and_params=0x6360d0) at /tmp/buildd/glib2.0-2.22.3/gobject/gsignal.c:3247 tmp = <value optimized out> handler = 0x634b20 accumulator = 0x0 emission = {next = 0x0, instance = 0x63f820, ihint = {signal_id = 14, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 4} class_closure = 0x612750 handler_list = 0x634b20 return_accu = 0x0 accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}} signal_id = 14 max_sequential_handler_number = 8 return_value_altered = 0 #9 0x00007ffff76d3082 in IA__g_signal_emit_valist (instance=0x63f820, signal_id=<value optimized out>, detail=0, var_args=0x7fffffffdb80) at /tmp/buildd/glib2.0-2.22.3/gobject/gsignal.c:2980 signal_return_type = 4 ---Type <return> to continue, or q <return> to quit--- param_values = 0x6360e8 node = 0x6127e0 i = 1 n_params = 1 __PRETTY_FUNCTION__ = "IA__g_signal_emit_valist" #10 0x00007ffff76d3553 in IA__g_signal_emit (instance=0x6450c0, signal_id=0, detail=4294956816) at /tmp/buildd/glib2.0-2.22.3/gobject/gsignal.c:3037 var_args = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fffffffdc60, reg_save_area = 0x7fffffffdba0}} #11 0x00007ffff7bba9e1 in ?? () from /usr/lib/libwnck-1.so.22 No symbol table info available. #12 0x00007ffff7bbb0b4 in ?? () from /usr/lib/libwnck-1.so.22 No symbol table info available. #13 0x00007ffff742713a in g_main_dispatch (context=0x638690) at /tmp/buildd/glib2.0-2.22.3/glib/gmain.c:1960 __PRETTY_FUNCTION__ = "g_main_dispatch" #14 IA__g_main_context_dispatch (context=0x638690) at /tmp/buildd/glib2.0-2.22.3/glib/gmain.c:2513 No locals. #15 0x00007ffff742a998 in g_main_context_iterate (context=0x638690, block=1, dispatch=1, self=<value optimized out>) at /tmp/buildd/glib2.0-2.22.3/glib/gmain.c:2591 max_priority = 200 timeout = 0 some_ready = 1 nfds = 1 allocated_nfds = <value optimized out> fds = 0x63f2f0 __PRETTY_FUNCTION__ = "g_main_context_iterate" #16 0x00007ffff742ae6d in IA__g_main_loop_run (loop=0x63da50) at /tmp/buildd/glib2.0-2.22.3/glib/gmain.c:2799 self = 0x649840 __PRETTY_FUNCTION__ = "IA__g_main_loop_run" #17 0x0000000000403f24 in main (argc=1, argv=0x7fffffffdfc8) at devilspie.c:149 error = 0x0 context = 0x1 options = {{long_name = 0x409253 "apply-to-existing", short_name = 97 'a', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x60c860, description = 0x4092c8 "Apply to all existing windows instead of just new windows.", arg_description = 0x0}, {long_name = 0x409265 "debug", short_name = 100 'd', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x60c840, description = 0x40926b "Output debug information", arg_description = 0x0}, {long_name = 0x4095e0 "", short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_FILENAME_ARRAY, arg_data = 0x60c858, description = 0x409284 "Configuration files to use", arg_description = 0x0}, {long_name = 0x0, short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x0, description = 0x0, arg_description = 0x0}} (gdb) quit A debugging session is active. Inferior 1 [process 8699] will be killed. Quit anyway? (y or n) y $ gdb --args devilspie -d GNU gdb (GDB) 7.0-debian Copyright (C) 2009 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/bin/devilspie...done. (gdb) r Starting program: /usr/bin/devilspie -d [Thread debugging using libthread_db enabled] Devil's Pie 0.22 starting... Loading /etc/devilspie /etc/devilspie doesn't exist Loading /home/pabs/.devilspie Loading /home/pabs/.devilspie/smtp-port-forwards.ds got eof 5 s-expressions loaded. ** (devilspie:8713): CRITICAL **: e_sexp_eval: assertion `f->tree != NULL' failed ** (devilspie:8713): CRITICAL **: e_sexp_eval: assertion `f->tree != NULL' failed ** (devilspie:8713): CRITICAL **: e_sexp_eval: assertion `f->tree != NULL' failed ** (devilspie:8713): CRITICAL **: e_sexp_eval: assertion `f->tree != NULL' failed ** (devilspie:8713): CRITICAL **: e_sexp_eval: assertion `f->tree != NULL' failed ** (devilspie:8713): CRITICAL **: e_sexp_eval: assertion `f->tree != NULL' failed ^C Program received signal SIGINT, Interrupt. 0x00007ffff7158708 in *__GI___poll (fds=0x63f290, nfds=1, timeout=<value optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:83 83 ../sysdeps/unix/sysv/linux/poll.c: No such file or directory. in ../sysdeps/unix/sysv/linux/poll.c (gdb) quit A debugging session is active. Inferior 1 [process 8713] will be killed. Quit anyway? (y or n) y -- System Information: Debian Release: squeeze/sid APT prefers testing APT policy: (700, 'testing'), (600, 'unstable'), (550, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 2.6.32-trunk-amd64 (SMP w/2 CPU cores) Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages devilspie depends on: ii libc6 2.10.2-2 GNU C Library: Shared libraries ii libglib2.0-0 2.22.3-1 The GLib library of C routines ii libgtk2.0-0 2.18.3-1 The GTK+ graphical user interface ii libwnck22 2.28.0-1 Window Navigator Construction Kit ii libx11-6 2:1.3.2-1 X11 client-side library -- bye, pabs http://wiki.debian.org/PaulWise
signature.asc
Description: This is a digitally signed message part