Develop

Ticket #1579 (closed defect: worksforme)

Opened 18 months ago

Last modified 17 months ago

StaticString.hpp line 90, 6.3 Master

Reported by: scottp Owned by: scottp
Priority: normal Milestone: XCSoar 6.3
Component: Configuration Version: 6.3
Keywords: Cc:

Description

assert for null string 'other' on line 90 of StaticString?.hpp when running UNIX or PC version vai Wine.

GIT 499b32ba8bca40fce94a2d92b9a40b278ae1ead4

Deleting XCSoarData directory fixes the problem, so it is likely a data issue with preferences or similar. I will play with a few and see which one has the problem.

Change History

comment:1 Changed 18 months ago by scottp

Bug found, it is in XCI files. I have made a simple XCI file with valid format.

mode=default
type=key
data=RETURN
event=FLARMRadar ForceToggle
event=ClearAirspaceWarnings
event=ClearStatusMessages

I can't get any XCI files to work that all worked pre 6.3

comment:2 Changed 18 months ago by max

  • Owner set to scottp
  • Status changed from new to assigned

A malformed XCI file must never cause a crash/assertion failure. Please investigate why this happened. If you can't please supply a backtrace. As a developer, you might know that a crash report without a backtrace is near to useless.

comment:3 Changed 18 months ago by scottp

Howdy Max. Sorry I can't generate back trace from Wine (is there a way), and the Unix version won't run at all for me (separate bug, to do with the non-OpenGL version and threads).

comment:5 Changed 18 months ago by scottp

OK Here is your backtrace. But after a little research I think that it is not until after an ignore on an assert. Ie. there does not seem to be a way to get a backtrace at an assert only at a segfault.

Unhandled exception: page fault on read access to 0x00000000 in 32-bit code (0x6824473d).
Register dump:
 CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
 EIP:6824473d ESP:009fe644 EBP:009fe668 EFLAGS:00010206(  R- --  I   - -P- )
 EAX:00000064 EBX:001a5eb8 ECX:009fe704 EDX:00000000
 ESI:00000001 EDI:009ff904
Stack dump:
0x009fe644:  00000001 009ff904 00577d4e 009fe704
0x009fe654:  00000000 0000005a 001a5eb8 00000001
0x009fe664:  009ff904 009fe688 00577d84 009fe704
0x009fe674:  00000000 009fe6b8 004dcca5 001a71f4
0x009fe684:  00000001 009fe6d8 00549732 009fe704
0x009fe694:  00000000 00010000 001a72b0 00000019
Backtrace:
=>0 0x6824473d NTDLL_wcscmp+0xd() in ntdll (0x009fe668)
  1 0x00577d84 in xcsoar (+0x177d83) (0x009fe688)
  2 0x00549732 in xcsoar (+0x149731) (0x009fe6d8)
  3 0x0043c8d6 in xcsoar (+0x3c8d5) (0x009ff928)
  4 0x00437a4e in xcsoar (+0x37a4d) (0x009ff968)
  5 0x0047a63b in xcsoar (+0x7a63a) (0x009ffd78)
  6 0x004b2103 in xcsoar (+0xb2102) (0x009ffda8)
  7 0x005c86dd in xcsoar (+0x1c86dc) (0x009ffdc8)
  8 0x0040159a in xcsoar (+0x1599) (0x009ffea0)
  9 0x6831584c call_process_entry+0xb() in kernel32 (0x009ffeb8)
  10 0x68316500 ExitProcess+0xcaf() in kernel32 (0x009ffef8)
0x6824473d NTDLL_wcscmp+0xd in ntdll: movzwl	0x0(%edx),%esi

Would it be worth using backtrace printed out before the assert... is that something worth adding in?

Scott

comment:6 Changed 17 months ago by Turbo

Hey scott, please provide us with the XCI file that crashes XCSoar on your machine or a real backtrace of the problem. Without it we can't help...

comment:7 Changed 17 months ago by max

  • Status changed from assigned to closed
  • Resolution set to worksforme

Reopen as soon as data can be provided.

Note: See TracTickets for help on using tickets.