[
https://issues.apache.org/jira/browse/CB-8758?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14512723#comment-14512723
]
ASF subversion and git services commented on CB-8758:
-----------------------------------------------------
Commit 62e92afae80c648a8018bde4e2b71a1ebe8de1d9 in
cordova-plugin-splashscreen's branch refs/heads/master from [~dpolivy]
[
https://git-wip-us.apache.org/repos/asf?p=cordova-plugin-splashscreen.git;h=62e92af
]
CB-8758 [wp8]: UnauthorizedAccessException on hide()
When calling hide() from JS, the attempt to access Popup could happen on
a background thread, which ends up throwing an
UnauthorizedAccessException about cross-thread access.
To address this, it's best to check the popup's state from within the UI
thread.
Fixes https://issues.apache.org/jira/browse/CB-8758
> WP8: splashscreen.hide() causes exception to be thrown
> ------------------------------------------------------
>
> Key: CB-8758
> URL: https://issues.apache.org/jira/browse/CB-8758
> Project: Apache Cordova
> Issue Type: Bug
> Components: Plugin SplashScreen, WP8
> Reporter: Dan Polivy
> Assignee: Jesse MacFadyen
>
> When calling the hide() method on splashscreen, on WP8, the call to
> Popup.IsOpen throws a TargetInvocationException due to invalid cross-thread
> access.
> I don't know the specifics, but most likely the threading model for how
> plugins are executed has changed over time, exposing this exception.
> + [System.Reflection.TargetInvocationException]
> {System.Reflection.TargetInvocationException: Exception has been thrown by
> the target of an invocation. ---> System.UnauthorizedAccessException: Invalid
> cross-thread access.
> at MS.Internal.XcpImports.CheckThread()
> at System.Windows.DependencyObject.GetValueInternal(DependencyProperty dp)
> at System.Windows.FrameworkElement.GetValueInternal(DependencyProperty dp)
> at System.Windows.Controls.Primitives.Popup.get_IsOpen()
> at WPCordovaClassLib.Cordova.Commands.SplashScreen.hide(String options)
> --- End of inner exception stack trace ---
> at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[]
> arguments, Signature sig, Boolean constructor)
> at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj,
> Object[] parameters, Object[] arguments)
> at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags
> invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
> at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
> at WPCordovaClassLib.Cordova.Commands.BaseCommand.InvokeMethodNamed(String
> methodName, Object[] args)
> at WPCordovaClassLib.Cordova.Commands.BaseCommand.InvokeMethodNamed(String
> callbackId, String methodName, Object[] args)
> at
> WPCordovaClassLib.Cordova.NativeExecution.<>c__DisplayClass6.<ProcessCommand>b__2()}
> System.Reflection.TargetInvocationException
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]