Multibit-Legacy / multibit-hd

Deprecated Bitcoin Wallet
https://multibit.org/blog/2017/07/26/multibit-shutdown.html
Other
173 stars 114 forks source link

Wipe Trezor with no Trezor plugged in crashes app #758

Closed jim618 closed 8 years ago

jim618 commented 8 years ago

If you do NOT have a Trezor plugged in and do 'wipe trezor' you get the crash reporter:

Stacktrace:

{"@timestamp":"2015-10-17T14:16:25.940+01:00","@version":1,"message":"Populating view map and firing initial state view events...","logger_name":"org.multibit.hd.ui.views.wizards.AbstractWizard","thread_name":"AWT-EventQueue-0","level":"DEBUG","level_value":10000}
{"@timestamp":"2015-10-17T14:16:26.339+01:00","@version":1,"message":"Showing wizard panel: SELECT_HARDWARE_ACTION","logger_name":"org.multibit.hd.ui.views.wizards.AbstractWizard","thread_name":"AWT-EventQueue-0","level":"DEBUG","level_value":10000}
{"@timestamp":"2015-10-17T14:16:26.340+01:00","@version":1,"message":"Show light box","logger_name":"org.multibit.hd.ui.views.components.Panels","thread_name":"AWT-EventQueue-0","level":"DEBUG","level_value":10000}
{"@timestamp":"2015-10-17T14:16:26.369+01:00","@version":1,"message":"Light box panel added to application frame","logger_name":"org.multibit.hd.ui.views.components.panels.LightBoxPanel","thread_name":"AWT-EventQueue-0","level":"DEBUG","level_value":10000}
{"@timestamp":"2015-10-17T14:16:29.229+01:00","@version":1,"message":"Current selection : REQUEST_WIPE_DEVICE","logger_name":"org.multibit.hd.ui.views.wizards.use_hardware_wallet.UseHardwareWalletWizardModel","thread_name":"AWT-EventQueue-0","level":"DEBUG","level_value":10000}
{"@timestamp":"2015-10-17T14:16:29.233+01:00","@version":1,"message":"Showing wizard panel: REQUEST_WIPE_DEVICE","logger_name":"org.multibit.hd.ui.views.wizards.AbstractWizard","thread_name":"AWT-EventQueue-0","level":"DEBUG","level_value":10000}
{"@timestamp":"2015-10-17T14:16:29.273+01:00","@version":1,"message":"Uncaught exception. Proceeding to show Error Reporting dialog...","logger_name":"org.multibit.hd.core.error_reporting.ExceptionHandler","thread_name":"AWT-EventQueue-0","level":"ERROR","level_value":40000,"stack_trace":"java.lang.IllegalStateException: Optional.get() cannot be called on an absent value\n\tat com.google.common.base.Absent.get(Absent.java:47) ~[multibit-hd.jar:na]\n\tat org.multibit.hd.ui.views.wizards.use_hardware_wallet.UseHardwareWalletRequestWipeDevicePanelView.afterShow(UseHardwareWalletRequestWipeDevicePanelView.java:83) ~[multibit-hd.jar:na]\n\tat org.multibit.hd.ui.views.wizards.AbstractWizard$1.run(AbstractWizard.java:200) ~[multibit-hd.jar:na]\n\tat java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:312) ~[na:1.7.0_80]\n\tat java.awt.EventQueue.dispatchEventImpl(EventQueue.java:745) ~[na:1.7.0_80]\n\tat java.awt.EventQueue.access$300(EventQueue.java:103) ~[na:1.7.0_80]\n\tat java.awt.EventQueue$3.run(EventQueue.java:706) ~[na:1.7.0_80]\n\tat java.awt.EventQueue$3.run(EventQueue.java:704) ~[na:1.7.0_80]\n\tat java.security.AccessController.doPrivileged(Native Method) ~[na:1.7.0_80]\n\tat java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) ~[na:1.7.0_80]\n\tat java.awt.EventQueue.dispatchEvent(EventQueue.java:715) ~[na:1.7.0_80]\n\tat java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242) [na:1.7.0_80]\n\tat java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161) [na:1.7.0_80]\n\tat java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150) [na:1.7.0_80]\n\tat java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146) [na:1.7.0_80]\n\tat java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138) [na:1.7.0_80]\n\tat java.awt.EventDispatchThread.run(EventDispatchThread.java:91) [na:1.7.0_80]\n"}
gary-rowe commented 8 years ago

Modified as follows:

Ready for review and close.

jim618 commented 8 years ago

Confirmed Verify and Wipe are disabled when no hardware wallet attached. Confirmed Verify and Wipe are enabled when Trezor and KeepKey are plugged in.

Closing.