timo-sisus / Power-Inspector

Report bugs and offer improvement ideas for Power Inspector.
http://u3d.as/1sNc
8 stars 0 forks source link

Frequent crashes #28

Open andy-block opened 3 years ago

andy-block commented 3 years ago

I purchased Power Inspector about 2 weeks ago. However, each time I enable it (3 times so far), I find that within about 5 minutes Unity (version 2018.4.10f1) has crashed; if I don't use Power Inspector, I don't seem to have any problems with crashes. I know one of the crashes was when using the search facility to try to find a property in the inspector, however, I did not capture a log that time. The most recent crash was I think just returning to the editor after switching to another application. I captured a log this time:

`Copied "Content Size Fitter" values "m_HorizontalFit": 2, "m_VerticalFit": 0 UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object) UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[]) UnityEngine.Logger:Log(LogType, Object) UnityEngine.Debug:Log(Object) Sisus.Clipboard:SendCopyToClipboardMessage(String, String, String) (at Assets/Sisus/Power Inspector/Code/Editor/Generic/Clipboard/Clipboard.cs:999) Sisus.BaseDrawer:SendCopyToClipboardMessage(String, String) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/BaseDrawer.cs:2659) Sisus.BaseDrawer:SendCopyToClipboardMessage(String) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/BaseDrawer.cs:2651) Sisus.BaseDrawer:SendCopyToClipboardMessage() (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/BaseDrawer.cs:2643) Sisus.BaseDrawer:CopyToClipboard(Int32) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/BaseDrawer.cs:2497) Sisus.BaseDrawer:CopyToClipboard() (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/BaseDrawer.cs:2489) UnityEditor.GenericMenu:CatchMenu(Object, String[], Int32) (at /Users/builduser/buildslave/unity/build/Editor/Mono/GUI/GenericMenu.cs:121)

(Filename: Assets/Sisus/Power Inspector/Code/Editor/Generic/Clipboard/Clipboard.cs Line: 999)

Copied "Horizontal Layout Group" values "m_Padding": { "$id": 0, "$type": "0|UnityEngine.RectOffset, UnityEngine.CoreModule" }, "m_ChildAlignment": 4, "m_Spacing": 0, "m_ChildForceExpandWidth": true, "m_ChildForceExpandHeight": true, "m_ChildControlWidth": false, "m_ChildControlHeight": false UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object) UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[]) UnityEngine.Logger:Log(LogType, Object) UnityEngine.Debug:Log(Object) Sisus.Clipboard:SendCopyToClipboardMessage(String, String, String) (at Assets/Sisus/Power Inspector/Code/Editor/Generic/Clipboard/Clipboard.cs:999) Sisus.BaseDrawer:SendCopyToClipboardMessage(String, String) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/BaseDrawer.cs:2659) Sisus.BaseDrawer:SendCopyToClipboardMessage(String) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/BaseDrawer.cs:2651) Sisus.BaseDrawer:SendCopyToClipboardMessage() (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/BaseDrawer.cs:2643) Sisus.BaseDrawer:CopyToClipboard(Int32) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/BaseDrawer.cs:2497) Sisus.BaseDrawer:CopyToClipboard() (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/BaseDrawer.cs:2489) UnityEditor.GenericMenu:CatchMenu(Object, String[], Int32) (at /Users/builduser/buildslave/unity/build/Editor/Mono/GUI/GenericMenu.cs:121)

(Filename: Assets/Sisus/Power Inspector/Code/Editor/Generic/Clipboard/Clipboard.cs Line: 999)

Receiving unhandled NULL exception Obtained 13 stack frames.

0 0x000001010ad0c7 in void Transfer_SimpleNativeClass<StreamedBinaryWrite, RectOffset, false>(SerializationCommandArguments const&, RuntimeSerializationCommandInfo&)

1 0x0000010104a8ae in void ExecuteSerializationCommands(SerializationCommandProvider&, StreamedBinaryWrite&, GeneralMonoObject const&)

2 0x0000010104a650 in void TransferScriptingObject(StreamedBinaryWrite&, ScriptingObjectPtr, ScriptingClassPtr, MonoScriptCache const*)

3 0x00000101041b79 in void SerializableManagedRefTransfer::Transfer(Object*, SerializableManagedRef&, StreamedBinaryWrite&, bool)

4 0x00000101108ee4 in WriteObjectToVector(Object const&, dynamic_array<unsigned char, 0ul>&, TransferInstructionFlags)

5 0x0000010140adfa in SerializedObject::Update()

6 0x000001c022811d in (wrapper managed-to-native) UnityEditor.SerializedObject:Update (UnityEditor.SerializedObject) {0x13b92c618} + 0x11d (0x1c0228000 0x1c0228224) [0x20ada5c80 - Unity Child Domain]

7 0x0000019b6d3060 in mono_jit_runtime_invoke

8 0x0000019b8947e5 in do_runtime_invoke

9 0x0000019b897b31 in mono_runtime_try_invoke_array

10 0x0000019b846c84 in ves_icall_InternalInvoke

11 0x0000019e02af50 in (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&) {0x110a4c9f0} + 0x130 (0x19e02ae20 0x19e02b041) [0x20ada5c80 - Unity Child Domain]

12 0x0000019e3ef3a8 in System.Reflection.MethodBase:Invoke (object,object[]) {0x10fdf0ae0} + 0x88 (0x19e3ef320 0x19e3ef400) [0x20ada5c80 - Unity Child Domain]

Launching bug reporter [Performance] WebView.DoCefMessages : 845 samples, Peak. 124 ms (225.6x), Avg. 547 us, Total. 462.6 ms (0.0%) [Performance] WebView.CheckCurlRequests : 264 samples, Peak. 936 us (149.8x), Avg. 6.25 us, Total. 1.649 ms (0.0%) [Performance] License.Tick : 2543016 samples, Peak. 3.16 ms (2332.8x), Avg. 1.36 us, Total. 3.449 s (0.0%) [Performance] UnityConnect.Tick : 1424216 samples, Peak. 48.3 ms (1869.2x), Avg. 25.9 us, Total. 36.83 s (0.0%) [Performance] PackageManager::RunRequestSynchronously : 5 samples, Peak. 70.1 ms (5.0x), Avg. 14.0 ms, Total. 70.25 ms (0.0%) [Performance] ApplicationTickTimer : 3900945 samples, Peak. 22.6 ks (534418.6x), Avg. 42.3 ms, Total. 165.2 ks (72.2%) [Performance] VCProvider : 3900946 samples, Peak. 40.8 ms (6513.7x), Avg. 6.26 us, Total. 24.43 s (0.0%) [Performance] MonoCompiler.Tick : 447412 samples, Peak. 177 s (272884.5x), Avg. 648 us, Total. 289.7 s (0.1%) [Performance] Internal_SwitchSkin : 3900946 samples, Peak. 952 us (9512.5x), Avg. 100 ns, Total. 390.4 ms (0.0%) [Performance] Collab.Tick : 1423243 samples, Peak. 10.5 ms (5702.5x), Avg. 1.85 us, Total. 2.628 s (0.0%) [Performance] WebView.Tick : 2542142 samples, Peak. 224 s (523407.6x), Avg. 428 us, Total. 1.087 ks (0.5%) [Performance] CurlRequest.Tick : 807143 samples, Peak. 18.9 ms (13837.1x), Avg. 1.37 us, Total. 1.105 s (0.0%) [Performance] SceneBackgroundTask.Tick : 586300 samples, Peak. 323 us (1296.7x), Avg. 249 ns, Total. 146.1 ms (0.0%)`

Please let me know if I could provide any further info.

andy-block commented 3 years ago

Once again within 5 minutes of starting to use the inspector, I had a crash, with a different stack trace this time:

Parameter("Parameters") ApplyInChildren - members[1] System.NullReferenceException: Object reference not set to an instance of an object at Sisus.ParentFieldDrawer1[TValue].ApplyInChildren (System.Action1[T] action) [0x00010] in /Users/ablock/Perforce/dandy/tmh/Assets/Sisus/Power Inspector/Code/Editor/Drawers/Field/Parent/ParentFieldDrawer.cs:1445 UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object) UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[]) UnityEngine.Logger:Log(LogType, Object) UnityEngine.Debug:LogError(Object) Sisus.ParentFieldDrawer1:ApplyInChildren(Action1) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/Field/Parent/ParentFieldDrawer.cs:1449) Sisus.ParentFieldDrawer1:ApplyInChildren(Action1) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/Field/Parent/ParentFieldDrawer.cs:1445) Sisus.ParentFieldDrawer1:ApplyInChildren(Action1) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/Field/Parent/ParentFieldDrawer.cs:1445) Sisus.ParentFieldDrawer1:ApplyInChildren(Action1) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/Field/Parent/ParentFieldDrawer.cs:1445) Sisus.ParentFieldDrawer1:ApplyInChildren(Action1) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/Field/Parent/ParentFieldDrawer.cs:1445) Sisus.ParentFieldDrawer1:ApplyInChildren(Action1) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/Field/Parent/ParentFieldDrawer.cs:1445) Sisus.ParentFieldDrawer1:ApplyInChildren(Action1) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/Field/Parent/ParentFieldDrawer.cs:1445) Sisus.ParentFieldDrawer1:ApplyInChildren(Action1) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/Field/Parent/ParentFieldDrawer.cs:1445) Sisus.ParentDrawer1:ApplyInChildren(Action1) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/ParentDrawer.cs:752) Sisus.ParentDrawer1:ApplyInChildren(Action1) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/ParentDrawer.cs:752) Sisus.DrawerGroup:ApplyForEachControl(Action1) (at Assets/Sisus/Power Inspector/Code/Editor/Drawers/DrawerGroup.cs:291) Sisus.Inspector2:ApplyForEachControl(Action1) (at Assets/Sisus/Power Inspector/Code/Editor/Inspector/Core/Inspector.cs:1766) Sisus.Inspector2:BroadcastOnFilterChanged() (at Assets/Sisus/Power Inspector/Code/Editor/Inspector/Core/Inspector.cs:2336) Sisus.SearchFilter:SetFilter(String, IInspector, Action1, Action) (at Assets/Sisus/Power Inspector/Code/Editor/Generic/Filtering/SearchFilter.cs:702) Sisus.SearchFilter:SetFilter(String, IInspector) (at Assets/Sisus/Power Inspector/Code/Editor/Generic/Filtering/SearchFilter.cs:180) Sisus.SearchBoxToolbarItem:SetFilter(String) (at Assets/Sisus/Power Inspector/Code/Editor/Inspector/Power Inspector/Toolbar/SearchBoxToolbarItem.cs:310) Sisus.SearchBoxToolbarItem:ApplyUnappliedFilterToInspectorState() (at Assets/Sisus/Power Inspector/Code/Editor/Inspector/Power Inspector/Toolbar/SearchBoxToolbarItem.cs:298) Sisus.InspectorManager:OnLayout() (at Assets/Sisus/Power Inspector/Code/Editor/Inspector/Core/Manager/InspectorManager.cs:922) Sisus.InspectorUtility:BeginInspectorDrawer(IInspectorDrawer, ISplittableInspectorDrawer) (at Assets/Sisus/Power Inspector/Code/Editor/Inspector/Utility/InspectorUtility.cs:292) Sisus.InspectorDrawerWindow2:OnGUI() (at Assets/Sisus/Power Inspector/Code/Editor/EditorWindow/InspectorDrawerWindow.cs:2018) System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&) System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) System.Reflection.MethodBase:Invoke(Object, Object[]) UnityEditor.HostView:Invoke(String, Object) (at /Users/builduser/buildslave/unity/build/Editor/Mono/HostView.cs:342) UnityEditor.HostView:Invoke(String) (at /Users/builduser/buildslave/unity/build/Editor/Mono/HostView.cs:336) UnityEditor.HostView:InvokeOnGUI(Rect, Rect) (at /Users/builduser/buildslave/unity/build/Editor/Mono/HostView.cs:302) UnityEditor.DockArea:DrawView(Rect, Rect, Boolean, Boolean, Boolean) (at /Users/builduser/buildslave/unity/build/Editor/Mono/GUI/DockArea.cs:361) UnityEditor.DockArea:OldOnGUI() (at /Users/builduser/buildslave/unity/build/Editor/Mono/GUI/DockArea.cs:320) UnityEngine.Experimental.UIElements.IMGUIContainer:DoOnGUI(Event, Matrix4x4, Rect, Boolean) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/IMGUIContainer.cs:244) UnityEngine.Experimental.UIElements.IMGUIContainer:HandleIMGUIEvent(Event, Matrix4x4, Rect) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/IMGUIContainer.cs:435) UnityEngine.Experimental.UIElements.IMGUIContainer:HandleIMGUIEvent(Event) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/IMGUIContainer.cs:421) UnityEngine.Experimental.UIElements.EventDispatcher:ProcessEvent(EventBase, IPanel) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/EventDispatcher.cs:541) UnityEngine.Experimental.UIElements.EventDispatcher:Dispatch(EventBase, IPanel, DispatchMode) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/EventDispatcher.cs:307) UnityEngine.Experimental.UIElements.BaseVisualElementPanel:SendEvent(EventBase, DispatchMode) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/Panel.cs:176) UnityEngine.Experimental.UIElements.UIElementsUtility:DoDispatch(BaseVisualElementPanel) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/UIElementsUtility.cs:245) UnityEngine.Experimental.UIElements.UIElementsUtility:ProcessEvent(Int32, IntPtr) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/UIElementsUtility.cs:68) UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr) (at /Users/builduser/buildslave/unity/build/Modules/IMGUI/GUIUtility.cs:179)

andy-block commented 3 years ago

A little more detail on that last crash. I was trying to edit the 'locationImages' array of sprite references here:

public class ButtonLocationSelection : MonoBehaviour { public Button previousButton; public Image previousButtonArrow; public Button nextButton; public Image nextButtonArrow; public Button selectButon; public LocTextMPro matchName; public LocTextMPro progressIndicator; public LocTextMPro lockedText; public GameObject clearedBanner; public GameObject progressBanner; public UIStateCustomizer stateCustomizer; public GameObject newMatchEffect; public GameObject newBanner; public Sprite[] locationImages; ... } LocTextMPro and UIStateCustomizer are components of our own, I hope their details are not relevant to the issue, as including them here would start dragging in a chain of dependencies...

locationImages contained 21 items when I started. I think I clicked a bit with the 'colour picker' icon next to the last element, as I was curious why it was there. It didn't become apparent :), so I then I right clicked on the last element and chose 'duplicate element'. I then started trying to drag a new sprite into the 22nd slot I just created, but it didn't seem to want to 'accept' it (I now realise that is because I was dragging the parent texture rather than the sprite). I think it was around then that the crash happened, but I'm not 100% sure exactly what my last click was. I just tried to reproduce it now, but with no luck I'm afraid.