Changeset 15897 in webkit
- Timestamp:
-
Aug 15, 2006, 4:51:04 PM
(19 years ago)
- Author:
- thatcher
- Message:
-
JavaScriptCore:
Reviewed by Tim H.
Build fix: DWARF and -gfull are incompatible with symbol separation.
JavaScriptGlue:
Reviewed by Tim H.
Build fix: DWARF and -gfull are incompatible with symbol separation.
- JavaScriptGlue.xcodeproj/project.pbxproj:
WebCore:
Reviewed by Tim H.
Build fix: DWARF and -gfull are incompatible with symbol separation.
- WebCore.xcodeproj/project.pbxproj:
WebKit:
Reviewed by Darin Adler.
<http://bugzilla.opendarwin.org/show_bug.cgi?id=8980>
ASSERTION FAILED: !isLoaded (WebKit/WebKit/Plugins/WebBasePluginPackage.m:228 -[WebBasePluginPackage dealloc])
<rdar://problem/4526052> intermittent assertion failure in -[WebBasePluginPackage dealloc] running layout tests (8980)
- Plugins/WebPluginDatabase.h:
- Plugins/WebPluginDatabase.m:
(+[WebPluginDatabase installedPlugins]):
Observe NSApplicationWillTerminateNotification so we can unload plug-ins on quit.
(-[WebPluginDatabase plugins]):
'plugins' is now a dictionary.
(-[WebPluginDatabase close]):
Call new -_removePlugin: method.
(-[WebPluginDatabase refresh]):
Moved parts of this method out into other methods: -_addPlugin:, -_removePlugin:, and -_scanForNewPlugins.
(-[WebPluginDatabase _plugInPaths]):
No changes; just moved in file.
(-[WebPluginDatabase _addPlugin:]):
New method. Refactored from -refresh. Adds a plug-in to the database.
(-[WebPluginDatabase _removePlugin:]):
New method. Refactored from -refresh. Remove a plug-in from the database.
(-[WebPluginDatabase _scanForNewPlugins]):
New method. Refactored from -refresh. Returns the list of plug-in packages on disk.
(-[WebPluginDatabase _applicationWillTerminate]):
New method. Called when the application terminates. Closes the plug-in database so that all plug-ins are
removed from the DB (and unloaded if necessary).
- Plugins/WebBasePluginPackage.h:
- Plugins/WebBasePluginPackage.m:
(-[WebBasePluginPackage initWithPath:]):
Try to create the NSBundle first, so if the file is not a valid bundle we bail out early. This
avoids some stat()s and allocations during the plug-in refresh process.
(-[WebBasePluginPackage isLoaded]):
Removed.
(-[WebBasePluginPackage load]):
Base class for plug-in packages now always loads "successfully".
(-[WebBasePluginPackage dealloc]):
Removed this assertion. The base plug-in package class has no concept of
"unloading".
(-[WebBasePluginPackage finalize]):
ditto.
(-[WebBasePluginPackage wasRemovedFromPluginDatabase:]):
Moved code to unload plug-in package to WebNetscapePluginPackage. Not all plug-in
packages can be "unloaded".
- Plugins/WebNetscapePluginPackage.h:
- Plugins/WebNetscapePluginPackage.m:
(-[WebNetscapePluginPackage _unloadWithShutdown:]):
Combined old -unload and -unloadWithoutShutdown methods into this new one.
(-[WebNetscapePluginPackage initWithPath:]):
Call new unload method.
(-[WebNetscapePluginPackage load]):
ditto
(-[WebNetscapePluginPackage wasRemovedFromPluginDatabase:]):
ditto
(-[WebNetscapePluginPackage open]):
New method. Called when a plug-in instance starts running.
(-[WebNetscapePluginPackage close]):
New method. Called when a plug-in instance stops running. When all plug-in instances
close the plug-in package, and the plug-in package is removed from the database, the plug-in
is unloaded.
- Plugins/WebPluginPackage.m:
(-[WebPluginPackage initWithPath:]):
(-[WebPluginPackage load]):
Made this a bit more efficient by checking if the bundle is already loaded.
(-[WebBasePluginPackage unload]):
Removed.
(-[WebBasePluginPackage isLoaded]):
Removed.
- Plugins/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView start]):
Open the plug-in package so it remains loaded while this instance uses it.
(-[WebBaseNetscapePluginView stop]):
Close the plug-in package when the plug-in instance is stopped.
- Plugins/WebBaseNetscapePluginStream.m:
(-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]):
This check is not necessary. Netscape plug-in packages are never unloaded until all their instances have
been stopped, and a Netscape plug-in instance will stop its streams when it is stopped.
(-[WebBaseNetscapePluginStream _destroyStream]):
ditto
(-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
ditto
(-[WebBaseNetscapePluginStream _deliverData]):
ditto
- Location:
- trunk
-
Files:
-
Legend:
- Unmodified
- Added
- Removed
-
r15893
|
r15897
|
|
| 1 | 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz> |
| 2 | |
| 3 | Reviewed by Tim H. |
| 4 | |
| 5 | Build fix: DWARF and -gfull are incompatible with symbol separation. |
| 6 | |
| 7 | * JavaScriptCore.xcodeproj/project.pbxproj: |
| 8 | |
1 | 9 | 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz> |
2 | 10 | |
-
r15893
|
r15897
|
|
1794 | 1794 | GCC_ENABLE_OBJC_EXCEPTIONS = YES; |
1795 | 1795 | GCC_ENABLE_OBJC_GC = YES; |
| 1796 | GCC_ENABLE_SYMBOL_SEPARATION = NO; |
1796 | 1797 | GCC_FAST_OBJC_DISPATCH = YES; |
1797 | 1798 | GCC_GENERATE_DEBUGGING_SYMBOLS = YES; |
-
r15893
|
r15897
|
|
| 1 | 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz> |
| 2 | |
| 3 | Reviewed by Tim H. |
| 4 | |
| 5 | Build fix: DWARF and -gfull are incompatible with symbol separation. |
| 6 | |
| 7 | * JavaScriptGlue.xcodeproj/project.pbxproj: |
| 8 | |
1 | 9 | 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz> |
2 | 10 | |
-
r15893
|
r15897
|
|
459 | 459 | GCC_ENABLE_OBJC_EXCEPTIONS = YES; |
460 | 460 | GCC_ENABLE_OBJC_GC = YES; |
| 461 | GCC_ENABLE_SYMBOL_SEPARATION = NO; |
461 | 462 | GCC_FAST_OBJC_DISPATCH = YES; |
462 | 463 | GCC_GENERATE_DEBUGGING_SYMBOLS = YES; |
-
r15893
|
r15897
|
|
| 1 | 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz> |
| 2 | |
| 3 | Reviewed by Tim H. |
| 4 | |
| 5 | Build fix: DWARF and -gfull are incompatible with symbol separation. |
| 6 | |
| 7 | * WebCore.xcodeproj/project.pbxproj: |
| 8 | |
1 | 9 | 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz> |
2 | 10 | |
-
r15893
|
r15897
|
|
7440 | 7440 | GCC_ENABLE_OBJC_EXCEPTIONS = YES; |
7441 | 7441 | GCC_ENABLE_OBJC_GC = YES; |
| 7442 | GCC_ENABLE_SYMBOL_SEPARATION = NO; |
7442 | 7443 | GCC_FAST_OBJC_DISPATCH = YES; |
7443 | 7444 | GCC_GENERATE_DEBUGGING_SYMBOLS = YES; |
-
r15896
|
r15897
|
|
90 | 90 | (-[WebBaseNetscapePluginStream _deliverData]): |
91 | 91 | ditto |
| 92 | |
| 93 | 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz> |
| 94 | |
| 95 | Reviewed by Tim H. |
| 96 | |
| 97 | Build fix: DWARF and -gfull are incompatible with symbol separation. |
| 98 | |
| 99 | * WebKit.xcodeproj/project.pbxproj: |
92 | 100 | |
93 | 101 | 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz> |
-
r15893
|
r15897
|
|
1936 | 1936 | GCC_ENABLE_OBJC_EXCEPTIONS = YES; |
1937 | 1937 | GCC_ENABLE_OBJC_GC = YES; |
| 1938 | GCC_ENABLE_SYMBOL_SEPARATION = NO; |
1938 | 1939 | GCC_FAST_OBJC_DISPATCH = YES; |
1939 | 1940 | GCC_GENERATE_DEBUGGING_SYMBOLS = YES; |