mirror of
https://github.com/rclone/rclone.git
synced 2026-07-18 11:42:07 -04:00
When creating or updating a remote through the rc api (config/create, config/update), parameters whose name starts with the ephemeral prefix "config_" (for example config_template_file and config_template used to customise the OAuth success page) were silently ignored. updateRemote sets each supplied parameter into the config mapper, but skips the "config_" prefixed keys so they are never written to the config file. That guard is correct, because the mapper's setter writes to the config file and these values are ephemeral. However backends read these values back from the mapper (oauthutil reads config_template_file and config_template via m.Get), so dropping them entirely meant the values could never reach the backend and the default template was always used. Collect the ephemeral parameters into a separate map and add it to the mapper as a getter overlay at PriorityNormal after the loop. The values are now readable through m.Get without being written to the config file, which is the same approach rclone authorize already uses to expose a template supplied on the command line. Fixes #9572 Co-authored-by: Hakanbaban53 <93117749+Hakanbaban53@users.noreply.github.com> Co-authored-by: maximilize <3752128+maximilize@users.noreply.github.com>