Bug 636873
| Summary: | [abrt] evolution-data-server-2.31.92-1.fc15: e_intervaltree_search: Process /usr/libexec/e-calendar-factory was killed by signal 11 (SIGSEGV) | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Tom London <selinux> | ||||
| Component: | evolution-data-server | Assignee: | Matthew Barnes <mbarnes> | ||||
| Status: | CLOSED DUPLICATE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
| Severity: | medium | Docs Contact: | |||||
| Priority: | low | ||||||
| Version: | rawhide | CC: | atswartz, mbarnes, mcrha | ||||
| Target Milestone: | --- | ||||||
| Target Release: | --- | ||||||
| Hardware: | x86_64 | ||||||
| OS: | Linux | ||||||
| Whiteboard: | abrt_hash:d7e1fba14b5a9e69f52f46538ea80e28082a30f1 | ||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2010-11-08 09:32:32 UTC | Type: | --- | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Attachments: |
|
||||||
|
Description
Tom London
2010-09-23 14:38:19 UTC
Created attachment 449238 [details]
File: backtrace
Package: evolution-data-server-2.31.92-1.fc15 Architecture: x86_64 OS Release: Fedora release 15 (Rawhide) How to reproduce ----- 1.click on clock-applet 2.crash reported 3. Comment ----- click on clock-applet A bit more here....
gdb says:
Core was generated by `/usr/libexec/e-calendar-factory'.
Program terminated with signal 11, Segmentation fault.
#0 e_intervaltree_search (tree=0x0, start=1283324400, end=1285916400)
at e-cal-backend-intervaltree.c:526
526 EIntervalTreePrivate *priv = tree->priv;
Missing separate debuginfos, use: debuginfo-install ORBit2-2.14.19-1.fc15.x86_64 nss-3.12.8-2.fc15.x86_64
(gdb) bt
#0 e_intervaltree_search (tree=0x0, start=1283324400, end=1285916400)
at e-cal-backend-intervaltree.c:526
#1 0x00007ff342deae7a in e_cal_backend_file_start_query (backend=0x16088e0,
query=0x162da80) at e-cal-backend-file.c:1891
#2 0x00007ff34f5cf32e in impl_DataCalView_start (object=0x7ff33c004330,
invocation=0x7ff33c003120, query=0x162da80) at e-data-cal-view.c:309
#3 0x0000000000408088 in _e_gdbus_gdbus_cclosure_marshaller_BOOLEAN__OBJECT (
closure=0x16514d0, return_value=0x7fff7f98fa00,
n_param_values=<value optimized out>, param_values=0x7ff33c002290,
invocation_hint=<value optimized out>, marshal_data=<value optimized out>)
at e-gdbus-marshallers.c:202
and
521 * Since: 2.32
522 **/
523 GList*
524 e_intervaltree_search (EIntervalTree *tree, time_t start, time_t end)
525 {
526 EIntervalTreePrivate *priv = tree->priv;
527 EIntervalNode *node;
528 GList *list = NULL;
529 GList *stack_start = NULL, *pos;
530
So it is segfaulting dereferencing 'tree' in line 526.
(gdb) print tree
$1 = (EIntervalTree *) 0x0
(gdb)
(gdb) up
#1 0x00007ff342deae7a in e_cal_backend_file_start_query (backend=0x16088e0,
query=0x162da80) at e-cal-backend-file.c:1891
1891 objs_occuring_in_tw = e_intervaltree_search (priv->interval_tree, occur_start, occur_end);
(gdb) list
1886 e_data_cal_view_get_text (query), G_OBJECT_TYPE_NAME (backend),
1887 g_hash_table_size(priv->comp_uid_hash));
1888 } else {
1889 /* matches objects in new "interval tree" way */
1890 /* events occuring in time window */
1891 objs_occuring_in_tw = e_intervaltree_search (priv->interval_tree, occur_start, occur_end);
1892
1893 g_list_foreach(objs_occuring_in_tw, (GFunc) match_object_sexp_to_component,
1894 &match_data);
1895
(gdb) print priv
$2 = (ECalBackendFilePrivate *) 0x162ec90
(gdb) print priv->interval_tree
$3 = (EIntervalTree *) 0x0
(gdb)
and
(gdb) print *priv
$5 = {path = 0x0, file_name = 0x162ed60 "calendar.ics", read_only = 0,
is_dirty = 0, dirty_idle_id = 0, idle_save_rmutex = {mutex = {
runtime_mutex = 0x0, static_mutex = {
pad = "\001\000\000\000\000\000\000\000\354\016\000\000\001", '\000' <repeats 26 times>, dummy_double = 4.9406564584124654e-324, dummy_pointer = 0x1,
dummy_long = 1}}, depth = 1, owner = {
data = "\200\371\233O\363\177\000",
dummy_double = 6.950663201802143e-310, dummy_pointer = 0x7ff34f9bf980,
dummy_long = 140682989402496}}, icalcomp = 0x0, comp_uid_hash = 0x0,
interval_tree = 0x0, comp = 0x0, default_zone = 0x16455e0,
custom_file = 0x0, refresh_lock = 0x162ed80, refresh_thread_stop = 0,
refresh_cond = 0x0, refresh_gone_cond = 0x0, refresh_skip = 0,
refresh_monitor = 0x0, refresh_timeout_id = 0}
(gdb)
So, priv->interval_tree is NULL.....
*** This bug has been marked as a duplicate of bug 650160 *** |