diff options
author | Vsevolod Kukol <sevoku@microsoft.com> | 2019-07-25 19:37:46 +0300 |
---|---|---|
committer | Vsevolod Kukol <sevoku@microsoft.com> | 2019-07-25 19:37:46 +0300 |
commit | 1c858223d1a7b1f9e1725c9f81c15fbe04114f4d (patch) | |
tree | 0dd7a3d7d25d9743ccae98498a39b33f57debece /Xwt | |
parent | 0d2b0bd208a5467ed3f8875c7530f463423c8431 (diff) |
Do not store any values if a FileDialog got canceled/closed
Fixes #817
Diffstat (limited to 'Xwt')
-rw-r--r-- | Xwt/Xwt/FileDialog.cs | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/Xwt/Xwt/FileDialog.cs b/Xwt/Xwt/FileDialog.cs index aed2f753..4fe0c3a5 100644 --- a/Xwt/Xwt/FileDialog.cs +++ b/Xwt/Xwt/FileDialog.cs @@ -173,6 +173,7 @@ namespace Xwt /// </summary> public bool Run (WindowFrame parentWindow) { + bool result = false; try { running = true; Backend.Initialize (filters, multiselect, initialFileName); @@ -182,20 +183,18 @@ namespace Xwt Backend.ActiveFilter = activeFilter; if (!string.IsNullOrEmpty (title)) Backend.Title = title; - bool result = false; BackendHost.ToolkitEngine.InvokePlatformCode (delegate { result = Backend.Run ((IWindowFrameBackend)Toolkit.GetBackend (parentWindow)); }); return result; } finally { - activeFilter = Backend.ActiveFilter; - fileName = Backend.FileName; - fileNames = Backend.FileNames; - if (fileName != string.Empty) - { - currentFolder = Backend.CurrentFolder; - } - running = false; + if (result) { + activeFilter = Backend.ActiveFilter; + fileName = Backend.FileName; + fileNames = Backend.FileNames; + currentFolder = Backend.CurrentFolder; + } + running = false; Backend.Cleanup (); } } |