Opened 11 years ago

Last modified 5 years ago

#10802 new bug

[TextSearch] crashes in GrepWindow::_OnNodeMonitorEvent

Reported by: diver Owned by: stippi
Priority: normal Milestone: R1
Component: Applications/TextSearch Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description

hrev47183, gcc2 hybrid in VirtualBox.

TextSearch finished searching for sys_beos in vlc sources and I left it open. I then ran make and it crashed. Reproduced it several times.

Attachments (2)

TextSearch-17411-debug-29-04-2014-18-23-38.report (29.1 KB ) - added by diver 11 years ago.
TextSearch-58756-debug-30-04-2014-14-30-40.report (48.2 KB ) - added by diver 11 years ago.
Crash report with DEBUG=1

Download all attachments as: .zip

Change History (6)

comment:1 by stippi, 11 years ago

TextSearch keeps monitoring all files and folders that it scanned, to adopt for changed search results. To analyze this bug, I would build TextSearch with DEBUG=1. This can also be added selectively when building a Haiku image, see build/jam/UserBuildConfig.Readme/Sample. When it crashes, in the Debugger it is then hopefully obvious why.

comment:2 by korli, 11 years ago

The second segment violation disassembly seems weird:

  • the dump shows use of 0x8(%ebp), 0xc(%ebp) and 0x10(%ebp), which, for a non static function, makes two pointers parameters.
  • _NodePath() definitely has only one pointer parameter.

Am I missing something?

by diver, 11 years ago

Crash report with DEBUG=1

in reply to:  2 comment:3 by bonefish, 11 years ago

Replying to korli:

The second segment violation disassembly seems weird:

  • the dump shows use of 0x8(%ebp), 0xc(%ebp) and 0x10(%ebp), which, for a non static function, makes two pointers parameters.
  • _NodePath() definitely has only one pointer parameter.

Am I missing something?

The return type is BString. One of those pointers (don't know off the top of my head whether it's the first or the last) points to the return object.

comment:4 by phoudoin, 5 years ago

Seem triggered when git rename the HEAD.lock file to HEAD.

Segfault also in the PathMonitor looper: Could be related to issue in PathMonitor::PathHandler::_EntryCreated(), some of which were fixed since: https://github.com/haiku/haiku/commits/master/src/kits/storage/PathMonitor.cpp

I wonder if this issue is still reproductible?

Note: See TracTickets for help on using tickets.