Changeset 162461 in webkit


Ignore:
Timestamp:
Jan 21, 2014 12:25:46 PM (10 years ago)
Author:
Simon Fraser
Message:

Log an error for a common cause of WebProcess early launch crashing in misconfigured development builds
https://bugs.webkit.org/show_bug.cgi?id=127121

Reviewed by Anders Carlsson.

A common cause of early WebProcess crashes during development is a null return
from CFBundleGetValueForInfoDictionaryKey(), so log and return an error in
this case rather than passing a null C string to dlsym().

  • Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.mm:

(WebKit::BootstrapMain):

Location:
trunk/Source/WebKit2
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r162458 r162461  
     12014-01-16  Simon Fraser  <simon.fraser@apple.com>
     2
     3        Log an error for a common cause of WebProcess early launch crashing in misconfigured development builds
     4        https://bugs.webkit.org/show_bug.cgi?id=127121
     5
     6        Reviewed by Anders Carlsson.
     7       
     8        A common cause of early WebProcess crashes during development is a null return
     9        from CFBundleGetValueForInfoDictionaryKey(), so log and return an error in
     10        this case rather than passing a null C string to dlsym().
     11
     12        * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.mm:
     13        (WebKit::BootstrapMain):
     14
    1152014-01-21  Tim Horton  <timothy_horton@apple.com>
    216
  • trunk/Source/WebKit2/Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.mm

    r148937 r162461  
    6767    @autoreleasepool {
    6868        NSString *entryPointFunctionName = (NSString *)CFBundleGetValueForInfoDictionaryKey(CFBundleGetMainBundle(), CFSTR("WebKitEntryPoint"));
     69        if (![entryPointFunctionName length]) {
     70            NSLog(@"Failed to get value for \"WebKitEntryPoint\" from bundle dictionary %@", CFBundleGetLocalInfoDictionary(CFBundleGetMainBundle()));
     71            return EXIT_FAILURE;
     72        }
     73
    6974        bootstrapMainFunction = reinterpret_cast<BootstrapMainFunction>(dlsym(frameworkLibrary, [entryPointFunctionName UTF8String]));
    7075        if (!bootstrapMainFunction) {
Note: See TracChangeset for help on using the changeset viewer.