From eb3219aaa38da99c46978eae1194802003a1065b Mon Sep 17 00:00:00 2001 From: das Date: Thu, 22 May 2003 01:15:33 +0000 Subject: * macosx/tclMacOSXBundle.c: fixed a problem that caused only the first call to Tcl_MacOSXOpenVersionedBundleResources() for a given bundle identifier to succeed. This caused the tcl runtime library not to be found in all interps created after the inital one. --- ChangeLog | 7 +++++++ macosx/tclMacOSXBundle.c | 10 ++++++++++ 2 files changed, 17 insertions(+) diff --git a/ChangeLog b/ChangeLog index b02522e..57bcbb1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2003-05-22 Daniel Steffen + + * macosx/tclMacOSXBundle.c: fixed a problem that caused only the + first call to Tcl_MacOSXOpenVersionedBundleResources() for a given + bundle identifier to succeed. This caused the tcl runtime library + not to be found in all interps created after the inital one. + 2003-05-20 Jeff Hobbs *** 8.4.3 TAGGED FOR RELEASE *** diff --git a/macosx/tclMacOSXBundle.c b/macosx/tclMacOSXBundle.c index 88def57..5018aa8 100644 --- a/macosx/tclMacOSXBundle.c +++ b/macosx/tclMacOSXBundle.c @@ -138,6 +138,16 @@ Tcl_MacOSXOpenVersionedBundleResources( bundleVersion, kCFStringEncodingUTF8); CFURLRef bundleURL = CFBundleCopyBundleURL(bundleRef); if (bundleURL) { + CFStringRef bundleTailRef = CFURLCopyLastPathComponent(bundleURL); + if (bundleTailRef) { + if (CFStringCompare(bundleTailRef,bundleVersionRef,0) + == kCFCompareEqualTo) { + versionedBundleRef = bundleRef; + } + CFRelease(bundleTailRef); + } + } + if (bundleURL && !versionedBundleRef) { CFURLRef versURL = CFURLCreateCopyAppendingPathComponent(NULL, bundleURL, CFSTR("Versions"), TRUE); if (versURL) { -- cgit v0.12