ArduPilot / ArduPilot/MissionPlanner

Full parameter list, then "refresh list" = crash

Open
#264 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
2.4k
Forks
2.9k
Avg merge
19h 16m
Merged PRs (30d)
4

Description

While viewing full parameter list, If I refresh it - right after the do not fly warning, MP crashes:

5 hz drawtime 1 gl True
bps 1069 loss 0 left 32 mem 38.15625
HUD 12 hz drawtime 2 gl True
bps 1367 loss 0 left 28 mem 39.16015625
HUD 15 hz drawtime 1 gl True
HUD resize 5 5
Open MissionPlanner.GCSViews.InitialSetup HWConfig
bps 1431 loss 0 left 20 mem 49.453125
Open MissionPlanner.GCSViews.SoftwareConfig SWConfig
Open MissionPlanner.GCSViews.ConfigurationView.ConfigSimplePids Basic Pids
RangeControl 1 300 700
RangeControl 0.005 0.08 0.2
RangeControl 0.01 0.5 1.5
bps 1367 loss 0 left 28 mem 39.47265625
ERROR MissionPlanner.GCSViews.ConfigurationView.ConfigSimplePids - System.Net.WebException: The remote server returned an error: (403) Forbidden.
at System.Net.HttpWebRequest.CheckFinalStatus (System.Net.WebAsyncResult result) [0x00000] in :0
at System.Net.HttpWebRequest.SetResponseData (System.Net.WebConnectionData data) [0x00000] in :0
INFO MissionPlanner.MAVLinkInterface - 12/15/2013 7:10:47 PM PreArm: Bad GPS Pos
bps 1390 loss 0 left 10 mem 41.62890625
Open MissionPlanner.GCSViews.ConfigurationView.ConfigRawParams Full Parameter List
bps 1431 loss 0 left 0 mem 46.91015625
bps 1367 loss 0 left 20 mem 46.98046875
bps 1367 loss 0 left 28 mem 47.03515625
bps 1431 loss 0 left 0 mem 47.2109375
CustomMessageBox thread calling Base Thread
CustomMessageBox thread running Base Thread
bps 1367 loss 0 left 20 mem 47.6640625
INFO MissionPlanner.Controls.ProgressReporterDialogue - RunBackgroundOperation
INFO MissionPlanner.Controls.ProgressReporterDialogue - Focus ctl
[xcb] Too much data requested from _XRead
[xcb] This is most likely caused by a broken X extension library
[xcb] Aborting, sorry about that.
mono: ../../src/xcb_io.c:736: _XRead: Assertion `!xcb_xlib_too_much_data_requested' failed.
Stacktrace:

at <0xffffffff>
at (wrapper managed-to-native) System.Windows.Forms.X11Keyboard.XCreateFontSet (intptr,string,intptr&,int&,intptr) <0xffffffff>
at System.Windows.Forms.X11Keyboard.CreateOverTheSpotXic (intptr,intptr) <0x000ab>
at System.Windows.Forms.X11Keyboard.CreateXic (intptr,intptr) <0x000eb>
at System.Windows.Forms.X11Keyboard.CreateXicForWindow (intptr) <0x00033>
at System.Windows.Forms.X11Keyboard.FocusIn (intptr) <0x0009b>
at System.Windows.Forms.XplatUIX11.SetFocus (intptr) <0x000e7>
at System.Windows.Forms.XplatUI.SetFocus (intptr) <0x00024>
at System.Windows.Forms.Control.Select (System.Windows.Forms.Control) <0x00297>
at System.Windows.Forms.Control.FocusInternal (bool) <0x0006b>
at System.Windows.Forms.Form.FocusInternal (bool) <0x00047>
at System.Windows.Forms.Control.Focus () <0x00015>
at MissionPlanner.Controls.ProgressReporterDialogue.ProgressReporterDialogue_Load (object,System.EventArgs) <0x0000f>
at System.Windows.Forms.Form.OnLoad (System.EventArgs) <0x00075>
at System.Windows.Forms.Form.OnLoadInternal (System.EventArgs) <0x0007f>
at System.Windows.Forms.Form.OnCreateControl () <0x00053>
at System.Windows.Forms.Control.CreateControl () <0x0011f>
at System.Windows.Forms.Control.WmShowWindow (System.Windows.Forms.Message&) <0x00193>
at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message&) <0x002c7>
at System.Windows.Forms.ScrollableControl.WndProc (System.Windows.Forms.Message&) <0x00013>
at System.Windows.Forms.ContainerControl.WndProc (System.Windows.Forms.Message&) <0x0005b>
at System.Windows.Forms.Form.WndProc (System.Windows.Forms.Message&) <0x00257>
at System.Windows.Forms.Control/ControlWindowTarget.OnMessage (System.Windows.Forms.Message&) <0x00024>
at System.Windows.Forms.Control/ControlNativeWindow.WndProc (System.Windows.Forms.Message&) <0x00036>
at System.Windows.Forms.NativeWindow.WndProc (intptr,System.Windows.Forms.Msg,intptr,intptr) <0x00310>
at System.Windows.Forms.XplatUIX11.SendMessage (intptr,System.Windows.Forms.Msg,intptr,intptr) <0x00313>
at System.Windows.Forms.XplatUIX11.MapWindow (System.Windows.Forms.Hwnd,System.Windows.Forms.WindowType) <0x001fb>
at System.Windows.Forms.XplatUIX11.CreateWindow (System.Windows.Forms.CreateParams) <0x00d53>
at System.Windows.Forms.XplatUI.CreateWindow (System.Windows.Forms.CreateParams) <0x00024>
at System.Windows.Forms.NativeWindow.CreateHandle (System.Windows.Forms.CreateParams) <0x0003f>
at System.Windows.Forms.Control.CreateHandle () <0x00069>
at System.Windows.Forms.Form.CreateHandle () <0x0001b>
at System.Windows.Forms.Control.CreateControl () <0x00087>
at System.Windows.Forms.Control.SetVisibleCore (bool) <0x0009f>
at System.Windows.Forms.Form.SetVisibleCore (bool) <0x002ef>
at System.Windows.Forms.Control.set_Visible (bool) <0x00032>
at (wrapper remoting-invoke-with-check) System.Windows.Forms.Control.set_Visible (bool) <0xffffffff>
at System.Windows.Forms.Application.RunLoop (bool,System.Windows.Forms.ApplicationContext) <0x002cf>
at System.Windows.Forms.Form.ShowDialog (System.Windows.Forms.IWin32Window) <0x00817>
at System.Windows.Forms.Form.ShowDialog () <0x0000f>
at MissionPlanner.Controls.ProgressReporterDialogue.RunBackgroundOperationAsync () <0x0007f>
at (wrapper remoting-invoke-with-check) MissionPlanner.Controls.ProgressReporterDialogue.RunBackgroundOperationAsync () <0xffffffff>
at MissionPlanner.MAVLinkInterface.getParamList () <0x000f7>
at MissionPlanner.GCSViews.ConfigurationView.ConfigRawParams.BUT_rerequestparams_Click (object,System.EventArgs) <0x00137>
at System.Windows.Forms.Control.OnClick (System.EventArgs) <0x00069>
at System.Windows.Forms.Button.OnClick (System.EventArgs) <0x00053>
at MissionPlanner.Controls.MyButton.OnClick (System.EventArgs) <0x00013>
at System.Windows.Forms.ButtonBase.OnMouseUp (System.Windows.Forms.MouseEventArgs) <0x00101>
at System.Windows.Forms.Button.OnMouseUp (System.Windows.Forms.MouseEventArgs) <0x00013>
at MissionPlanner.Controls.MyButton.OnMouseUp (System.Windows.Forms.MouseEventArgs) <0x00027>
at System.Windows.Forms.Control.WmLButtonUp (System.Windows.Forms.Message&) <0x00128>
at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message&) <0x00207>
at System.Windows.Forms.ButtonBase.WndProc (System.Windows.Forms.Message&) <0x00093>
at System.Windows.Forms.Button.WndProc (System.Windows.Forms.Message&) <0x00013>
at System.Windows.Forms.Control/ControlWindowTarget.OnMessage (System.Windows.Forms.Message&) <0x00024>
at System.Windows.Forms.Control/ControlNativeWindow.WndProc (System.Windows.Forms.Message&) <0x00036>
at System.Windows.Forms.NativeWindow.WndProc (intptr,System.Windows.Forms.Msg,intptr,intptr) <0x00310>
at System.Windows.Forms.XplatUIX11.DispatchMessage (System.Windows.Forms.MSG&) <0x0001f>
at System.Windows.Forms.XplatUI.DispatchMessage (System.Windows.Forms.MSG&) <0x00024>
at System.Windows.Forms.Application.RunLoop (bool,System.Windows.Forms.ApplicationContext) <0x00c9b>
at System.Windows.Forms.Application.Run (System.Windows.Forms.ApplicationContext) <0x0005f>
at System.Windows.Forms.Application.Run (System.Windows.Forms.Form) <0x00033>
at MissionPlanner.Program.Main (string[]) <0x0045f>
at (wrapper runtime-invoke) .runtime_invoke_void_object (object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:

```
mono() [0x4a290d]
/lib/x86_64-linux-gnu/libpthread.so.0(+0xfbb0) [0x7f37e6c41bb0]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x37) [0x7f37e68a0f77]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x148) [0x7f37e68a45e8]
/lib/x86_64-linux-gnu/libc.so.6(+0x2fd43) [0x7f37e6899d43]
/lib/x86_64-linux-gnu/libc.so.6(+0x2fdf2) [0x7f37e6899df2]
/usr/lib/x86_64-linux-gnu/libX11.so.6(_XRead+0xd5) [0x7f37e04ef985]
/usr/lib/x86_64-linux-gnu/libX11.so.6(_XRead32+0x24) [0x7f37e04f0414]
/usr/lib/x86_64-linux-gnu/libX11.so.6(XListFontsWithInfo+0x368) [0x7f37e04d3018]
/usr/lib/x86_64-linux-gnu/libX11.so.6(+0x736ed) [0x7f37e05266ed]
/usr/lib/x86_64-linux-gnu/libX11.so.6(XCreateOC+0xeb) [0x7f37e04ded9b]
/usr/lib/x86_64-linux-gnu/libX11.so.6(XCreateFontSet+0x5c) [0x7f37e04d3a1c]
[0x41acf06b]
```

Debug info from gdb:

Could not attach to process. If your uid matches the uid of the target
process, check the setting of /proc/sys/kernel/yama/ptrace_scope, or try
again as the root user. For more details, see /etc/sysctl.d/10-ptrace.conf
ptrace: Operation not permitted.
No threads.
#

Got a SIGABRT while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
# used by your application.

Aborted (core dumped)
andre@Loke:~/MP$

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the crash by opening MissionPlanner.GCSViews.ConfigurationView.ConfigRawParams and activating BUT_rerequestparams_Click after the do-not-fly warning. Trace MAVLinkInterface.getParamList and ProgressReporterDialogue.ProgressReporterDialogue_Load, where the stack reaches Mono System.Windows.Forms X11 keyboard handling. Done means refreshing the full parameter list no longer aborts the application.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.