diff --git a/src/core/webview/ClineProvider.ts b/src/core/webview/ClineProvider.ts index 90d2c69..aed9ee2 100644 --- a/src/core/webview/ClineProvider.ts +++ b/src/core/webview/ClineProvider.ts @@ -1222,6 +1222,10 @@ export class ClineProvider implements vscode.WebviewViewProvider { try { const { oldName, newName } = message.values + if (oldName === newName) { + break + } + await this.configManager.saveConfig(newName, message.apiConfiguration) await this.configManager.deleteConfig(oldName) diff --git a/webview-ui/src/components/settings/ApiConfigManager.tsx b/webview-ui/src/components/settings/ApiConfigManager.tsx index 0ea052d..b10adf4 100644 --- a/webview-ui/src/components/settings/ApiConfigManager.tsx +++ b/webview-ui/src/components/settings/ApiConfigManager.tsx @@ -60,6 +60,11 @@ const ApiConfigManager = ({ if (editState === "new") { onUpsertConfig(trimmedValue) } else if (editState === "rename" && currentApiConfigName) { + if (currentApiConfigName === trimmedValue) { + setEditState(null) + setInputValue("") + return + } onRenameConfig(currentApiConfigName, trimmedValue) }