After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 564499 - xl_chart_read_end critical when reading exported xls
xl_chart_read_end critical when reading exported xls
Status: RESOLVED FIXED
Product: Gnumeric
Classification: Applications
Component: import/export MS Excel (tm)
git master
Other All
: Normal normal
: ---
Assigned To: Jody Goldberg
Jody Goldberg
Depends on:
Blocks:
 
 
Reported: 2008-12-14 17:01 UTC by sum1
Modified: 2008-12-15 18:30 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description sum1 2008-12-14 17:01:24 UTC
Version: r17011
OS: Ubuntu Intrepid

Steps to reproduce:
- ssconvert /gnumeric/samples/chart-fill-tests.gnumeric /tmp/foo.xls
- gnumeric /tmp/foo.xls


Console output:

[ssconvert step]
WARNING **: unexpected plot type GogPolarPlot
WARNING **: unexpected plot type GogPolarPlot
WARNING **: unexpected plot type GogPolarPlot
WARNING **: unexpected plot type GogPolarPlot
WARNING **: unexpected plot type GogPolarPlot
[gnumeric step]
CRITICAL **: xl_chart_read_end: assertion `s->plot != NULL' failed
CRITICAL **: xl_chart_read_end: assertion `s->plot != NULL' failed
CRITICAL **: xl_chart_read_end: assertion `s->plot != NULL' failed
CRITICAL **: xl_chart_read_end: assertion `s->plot != NULL' failed
CRITICAL **: xl_chart_read_end: assertion `s->plot != NULL' failed


Backtrace:

  • #0 g_log
    from /usr/lib/libglib-2.0.so.0
  • #1 g_return_if_fail_warning
    from /usr/lib/libglib-2.0.so.0
  • #2 xl_chart_read_end
    at ms-chart.c line 2745
  • #3 ms_excel_chart_read
    at ms-chart.c line 3551
  • #4 ms_excel_chart_read_BOF
    at ms-chart.c line 3770
  • #5 ms_read_OBJ
    at ms-obj.c line 1279
  • #6 ms_escher_read_ClientData
    at ms-escher.c line 1993
  • #7 ms_escher_read_container
    at ms-escher.c line 2099
  • #8 ms_escher_read_SpContainer
    at ms-escher.c line 507
  • #9 ms_escher_read_container
    at ms-escher.c line 2099
  • #10 ms_escher_read_SpgrContainer
    at ms-escher.c line 1933
  • #11 ms_escher_read_container
    at ms-escher.c line 2099
  • #12 ms_escher_read_DgContainer
    at ms-escher.c line 1938
  • #13 ms_escher_read_container
    at ms-escher.c line 2099
  • #14 ms_escher_parse
    at ms-escher.c line 2166
  • #15 excel_read_sheet
    at ms-excel-read.c line 6231
  • #16 excel_read_BOF
    at ms-excel-read.c line 6514
  • #17 excel_read_workbook
    at ms-excel-read.c line 6597
  • #18 excel_file_open
    at boot.c line 192
  • #19 go_plugin_loader_module_func_file_open
    at go-plugin-loader-module.c line 239
  • #20 go_plugin_file_opener_open
    at go-plugin-service.c line 476
  • #21 go_file_opener_open
    at file.c line 299
  • #22 wb_view_new_from_input
    at workbook-view.c line 1230
  • #23 wb_view_new_from_uri
    at workbook-view.c line 1284
  • #24 main
    at main-application.c line 450

Comment 1 Jean Bréfort 2008-12-14 18:36:54 UTC
Well, it is not so harmful. We do not crash. Probably we should replace these warnings and criticals by log entries reported to the user so that he would know what went wrong.
The other way is to extend xls format to support all our plot types.
Comment 2 Morten Welinder 2008-12-15 18:11:53 UTC
We need to turn all criticals caused by data errors into g_warnings
(and later maybe something else).  We need this because...

1. There is a G_something setting that actually does turn criticals into
   crashes.  And it is turned on by something out there.

2. There are compilation choices that will turn off the checks.  Then
   we surely will crash.

3. As you note, eventually we want to tell the user in a sane way.
Comment 3 Morten Welinder 2008-12-15 18:21:44 UTC
For now, the right thing to use is XL_CHECK_CONDITION_VAL and
XL_CHECK_CONDITION.
Comment 4 Morten Welinder 2008-12-15 18:30:11 UTC
This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report.