From 8574b2152c8a7f0295f9566199cdf3875856f4c6 Mon Sep 17 00:00:00 2001 From: Scott Date: Thu, 13 Mar 2008 21:41:38 +0100 Subject: [PATCH] Fix ODB Input Manager memory issue The Input Manager failed to retain two string objects which were accessed after having been autoreleased. This patch fixes the bug where the "Edit in ..." menu entry was corrupted and related issues. The version number of the Input Manager has been bumped to 1.2. --- src/MacVim/edit-in-odb/Info.plist | 2 +- src/MacVim/edit-in-odb/src/Edit in ODBEditor.mm | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/MacVim/edit-in-odb/Info.plist b/src/MacVim/edit-in-odb/Info.plist index 172183c0f5..479090fd82 100644 --- a/src/MacVim/edit-in-odb/Info.plist +++ b/src/MacVim/edit-in-odb/Info.plist @@ -19,7 +19,7 @@ CFBundleSignature ???? CFBundleVersion - 1.1 + 1.2 NSPrincipalClass EditInODBEditor diff --git a/src/MacVim/edit-in-odb/src/Edit in ODBEditor.mm b/src/MacVim/edit-in-odb/src/Edit in ODBEditor.mm index 9957186f8d..4c9ea63a40 100644 --- a/src/MacVim/edit-in-odb/src/Edit in ODBEditor.mm +++ b/src/MacVim/edit-in-odb/src/Edit in ODBEditor.mm @@ -275,10 +275,10 @@ struct PBX_SelectionRange @"", @"ODBEditorName", nil]; - [defaults registerDefaults:appDefaults]; + [defaults registerDefaults:appDefaults]; - ODBEditorBundleIdentifier = [defaults stringForKey:@"ODBEditorBundleIdentifier"] ?: @""; - ODBEditorName = [defaults stringForKey:@"ODBEditorName"] ?: @""; + ODBEditorBundleIdentifier = [[defaults stringForKey:@"ODBEditorBundleIdentifier"] retain] ?: @""; + ODBEditorName = [[defaults stringForKey:@"ODBEditorName"] retain] ?: @""; if([defaults boolForKey:@"DisableEditInODBEditorMenuItem"] == NO && ![ODBEditorBundleIdentifier isEqualToString:@""] && ![ODBEditorBundleIdentifier isEqualToString:mainBundleIdentifier])