mirror of
https://github.com/KevinMidboe/spotify-downloader.git
synced 2025-10-29 09:50:16 +00:00
Bugfix: default config saved is overwritten with passed args
This commit is contained in:
@@ -27,7 +27,7 @@ if os.path.isfile(spotdl.config.DEFAULT_CONFIG_FILE):
|
||||
else:
|
||||
saved_config = {"spotify-downloader": {}}
|
||||
|
||||
_CONFIG_BASE = spotdl.util.merge(
|
||||
_CONFIG_BASE = spotdl.util.merge_copy(
|
||||
spotdl.config.DEFAULT_CONFIGURATION,
|
||||
saved_config,
|
||||
)
|
||||
@@ -278,7 +278,7 @@ class ArgumentHandler:
|
||||
configured_args = parser.parse_args().__dict__
|
||||
|
||||
defaults = config_base["spotify-downloader"]
|
||||
args = spotdl.util.merge(defaults, args)
|
||||
args = spotdl.util.merge_copy(defaults, args)
|
||||
|
||||
self.parser = parser
|
||||
self.args = args
|
||||
|
||||
@@ -184,7 +184,7 @@ class MetadataSearch:
|
||||
search_query = spotdl.metadata.format_string(self.yt_search_format, spotify_metadata)
|
||||
youtube_video = self._best_on_youtube_search_for_type_spotify(search_query)
|
||||
youtube_metadata = self.providers["youtube"].from_url(youtube_video["url"])
|
||||
metadata = spotdl.util.merge(
|
||||
metadata = spotdl.util.merge_copy(
|
||||
youtube_metadata,
|
||||
spotify_metadata
|
||||
)
|
||||
@@ -195,7 +195,7 @@ class MetadataSearch:
|
||||
youtube_metadata = self._on_youtube_for_type_youtube(self.track)
|
||||
search_query = spotdl.metadata.format_string("{track-name}", youtube_metadata)
|
||||
spotify_metadata = self._on_spotify_for_type_query(search_query)
|
||||
metadata = spotdl.util.merge(
|
||||
metadata = spotdl.util.merge_copy(
|
||||
youtube_metadata,
|
||||
spotify_metadata
|
||||
)
|
||||
@@ -212,7 +212,7 @@ class MetadataSearch:
|
||||
)
|
||||
spotify_metadata.start()
|
||||
youtube_metadata = self._on_youtube_for_type_query(search_query)
|
||||
metadata = spotdl.util.merge(
|
||||
metadata = spotdl.util.merge_copy(
|
||||
youtube_metadata,
|
||||
spotify_metadata.join()
|
||||
)
|
||||
|
||||
@@ -43,6 +43,9 @@ class ThreadWithReturnValue(threading.Thread):
|
||||
return self._return
|
||||
|
||||
|
||||
def merge_copy(base, overrider):
|
||||
return merge(base.copy(), overrider)
|
||||
|
||||
def merge(base, overrider):
|
||||
""" Override base dict with an overrider dict, recursively. """
|
||||
for key, value in overrider.items():
|
||||
|
||||
Reference in New Issue
Block a user