@@ -203,11 +203,11 @@ internal async ValueTask<List<Result>> RequestUpdateAsync(string search, Cancell
203
203
pluginFromLocalPath = Utilities . GetPluginInfoFromZip ( search ) ;
204
204
pluginFromLocalPath . LocalInstallPath = search ;
205
205
updateFromLocalPath = true ;
206
- }
206
+ }
207
207
208
208
var updateSource = ! updateFromLocalPath
209
- ? PluginsManifest . UserPlugins
210
- : new List < UserPlugin > { pluginFromLocalPath } ;
209
+ ? PluginsManifest . UserPlugins
210
+ : new List < UserPlugin > { pluginFromLocalPath } ;
211
211
212
212
var resultsForUpdate = (
213
213
from existingPlugin in Context . API . GetAllPlugins ( )
@@ -291,7 +291,7 @@ await Http.DownloadAsync(x.PluginNewUserPlugin.UrlDownload, downloadToFilePath)
291
291
{
292
292
downloadToFilePath = x . PluginNewUserPlugin . LocalInstallPath ;
293
293
}
294
-
294
+
295
295
296
296
PluginManager . UpdatePlugin ( x . PluginExistingMetadata , x . PluginNewUserPlugin ,
297
297
downloadToFilePath ) ;
@@ -327,7 +327,6 @@ await Http.DownloadAsync(x.PluginNewUserPlugin.UrlDownload, downloadToFilePath)
327
327
} , TaskContinuationOptions . OnlyOnFaulted ) ;
328
328
329
329
return true ;
330
-
331
330
} ,
332
331
ContextData =
333
332
new UserPlugin
@@ -513,7 +512,8 @@ internal List<Result> InstallFromLocalPath(string localPath)
513
512
{
514
513
if ( ! InstallSourceKnown ( plugin . Website )
515
514
&& MessageBox . Show ( string . Format (
516
- Context . API . GetTranslation ( "plugin_pluginsmanager_install_unknown_source_warning" ) ,
515
+ Context . API . GetTranslation (
516
+ "plugin_pluginsmanager_install_unknown_source_warning" ) ,
517
517
Environment . NewLine ) ,
518
518
Context . API . GetTranslation (
519
519
"plugin_pluginsmanager_install_unknown_source_warning_title" ) ,
@@ -532,7 +532,12 @@ internal List<Result> InstallFromLocalPath(string localPath)
532
532
533
533
private bool InstallSourceKnown ( string url )
534
534
{
535
- var author = url . Split ( '/' ) [ 3 ] ;
535
+ var pieces = url . Split ( '/' ) ;
536
+
537
+ if ( pieces . Length < 4 )
538
+ return false ;
539
+
540
+ var author = pieces [ 3 ] ;
536
541
var acceptedSource = "https://github.com" ;
537
542
var constructedUrlPart = string . Format ( "{0}/{1}/" , acceptedSource , author ) ;
538
543
@@ -589,7 +594,7 @@ private void Install(UserPlugin plugin, string downloadedFilePath)
589
594
try
590
595
{
591
596
PluginManager . InstallPlugin ( plugin , downloadedFilePath ) ;
592
-
597
+
593
598
if ( ! plugin . IsFromLocalInstallPath )
594
599
File . Delete ( downloadedFilePath ) ;
595
600
}
0 commit comments