Project

General

Profile

Bug #2036

Core dump in WAbstractItemView::modelHeaderDataChanged() of current git wt-3.3.0-30 (wt-a7f27d8)

Added by Stefan Ruppert over 8 years ago. Updated almost 8 years ago.

Status:
Closed
Priority:
High
Assignee:
Target version:
Start date:
07/15/2013
Due date:
% Done:

0%

Estimated time:

Description

Wt::WAbstractItemView::modelHeaderDataChanged (this=0x7fffc409b2a0, orientation=<optimized out>, start=<optimized out>, end=0)
    at /home/ruppert/work/Wt/kdeforche-wt-a7f27d8/src/Wt/WAbstractItemView.C:929
929     WWidget *tw = hw->widget(hw->count() - 1);
(gdb) where
#0  Wt::WAbstractItemView::modelHeaderDataChanged (this=0x7fffc409b2a0, orientation=<optimized out>, start=<optimized out>, end=0)
    at /home/ruppert/work/Wt/kdeforche-wt-a7f27d8/src/Wt/WAbstractItemView.C:929
#1  0x00007ffff722876a in operator() (a5=..., a4=..., a3=..., a2=<optimized out>, a1=<optimized out>, a0=<optimized out>, 
    this=<optimized out>) at /opt/devel/x86_64-unknown-linux-gnu/boost-1.48/include/boost/function/function_template.hpp:760
#2  operator()<boost::signals::detail::connection_slot_pair> (slot=..., this=0x7ffff35b8190)
    at /opt/devel/x86_64-unknown-linux-gnu/boost-1.48/include/boost/signals/signal_template.hpp:119
#3  dereference (this=0x7ffff35b8150)

924   if (renderState_ < NeedRerenderHeader) {
925     if (orientation == Horizontal) {
926       for (int i = start; i <= end; ++i) {
927     WContainerWidget *hw
928       = dynamic_cast<WContainerWidget *>(headerWidget(i, true));
929     WWidget *tw = hw->widget(hw->count() - 1);
930     headerItemDelegate_->update(tw, headerModel_->index(0, i), 0);
931     tw->setInline(false);
932     tw->addStyleClass("Wt-label");
933       }

hw is here a null-pointer and core dumps... I added a "if(hw == 0) continue;" and it works...

Regards,

Stefan


Files

HeaderCrash.cpp (1.49 KB) HeaderCrash.cpp Koen Deforche, 09/20/2013 04:46 PM
#1

Updated by Koen Deforche over 8 years ago

  • Status changed from New to InProgress
  • Assignee set to Koen Deforche
  • Target version set to 3.3.1
#2

Updated by Koen Deforche over 8 years ago

Hey Stefan,

I cannot understand how this can happen. Any hint on the scenario? Is this a header data change by itself or part of more changes to the model and/or view?

Regards,

koen

#3

Updated by Koen Deforche over 8 years ago

  • Status changed from InProgress to Feedback
#4

Updated by Stefan Ruppert over 8 years ago

Hi Koen,

I have a WTableView with a WStandardItemModel connected. Our implementation hides any column which was no data and directly after initialization no column has data and thus all columns are hidden.

Hope that helps to reproduce this behaviour.

Regards,

Stefan

#5

Updated by Koen Deforche over 8 years ago

  • Status changed from Feedback to InProgress
#6

Updated by Koen Deforche about 8 years ago

  • Status changed from InProgress to Feedback

Hey,

No luck. See attached test-case. Can you suggest how to modify it to reproduce the crash?

That would help us to make progress on this issue.

Regards,

koen

#8

Updated by Stefan Ruppert about 8 years ago

Hi Koen,

I don't think that I can get some time before october to try to reproduce it with your testcase.

Stefan

#9

Updated by Koen Deforche about 8 years ago

  • Target version changed from 3.3.1 to 3.3.2
#10

Updated by Koen Deforche almost 8 years ago

  • Target version deleted (3.3.2)
#11

Updated by Stefan Ruppert almost 8 years ago

Hi Koen,

it seems to me that this bug was implicitly fixed within wt 3.3.1. Now we have upgraded our apps to wt 3.3.1 about 4 weeks and this core didn't show up again! :-)

Stefan

#12

Updated by Koen Deforche almost 8 years ago

  • Status changed from Feedback to Closed
  • Target version set to 3.3.1

Well,

Perhaps we did fix it. I'll give ourselves the benefit of the doubt :-)

koen

Also available in: Atom PDF