Changeset 39817 in webkit for trunk/JavaScriptCore/API


Ignore:
Timestamp:
Jan 11, 2009, 11:34:12 PM (16 years ago)
Author:
[email protected]
Message:

2009-01-11 David Levin <[email protected]>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23245

Add initializeThreading to key places in JS API to ensure that
UString is properly initialized.

  • API/JSContextRef.cpp: (JSContextGroupCreate): (JSGlobalContextCreate):
  • API/JSObjectRef.cpp: (JSClassCreate):
  • API/JSStringRef.cpp: (JSStringCreateWithCharacters): (JSStringCreateWithUTF8CString):
  • API/JSStringRefCF.cpp: (JSStringCreateWithCFString):
Location:
trunk/JavaScriptCore/API
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/API/JSContextRef.cpp

    r39670 r39817  
    4545JSContextGroupRef JSContextGroupCreate()
    4646{
     47    initializeThreading();
    4748    return toRef(JSGlobalData::create().releaseRef());
    4849}
     
    6162JSGlobalContextRef JSGlobalContextCreate(JSClassRef globalObjectClass)
    6263{
     64    initializeThreading();
    6365#if PLATFORM(DARWIN)
    6466    // When running on Tiger or Leopard, or if the application was linked before JSGlobalContextCreate was changed
  • trunk/JavaScriptCore/API/JSObjectRef.cpp

    r39670 r39817  
    3333#include "FunctionConstructor.h"
    3434#include "Identifier.h"
     35#include "InitializeThreading.h"
    3536#include "JSArray.h"
    3637#include "JSCallbackConstructor.h"
     
    5354JSClassRef JSClassCreate(const JSClassDefinition* definition)
    5455{
     56    initializeThreading();
    5557    RefPtr<OpaqueJSClass> jsClass = (definition->attributes & kJSClassAttributeNoAutomaticPrototype)
    5658        ? OpaqueJSClass::createNoAutomaticPrototype(definition)
  • trunk/JavaScriptCore/API/JSStringRef.cpp

    r36263 r39817  
    2727#include "JSStringRef.h"
    2828
     29#include "InitializeThreading.h"
    2930#include "OpaqueJSString.h"
    3031#include <wtf/unicode/UTF8.h>
     
    3536JSStringRef JSStringCreateWithCharacters(const JSChar* chars, size_t numChars)
    3637{
     38    initializeThreading();
    3739    return OpaqueJSString::create(chars, numChars).releaseRef();
    3840}
     
    4042JSStringRef JSStringCreateWithUTF8CString(const char* string)
    4143{
     44    initializeThreading();
    4245    if (string) {
    4346        size_t length = strlen(string);
  • trunk/JavaScriptCore/API/JSStringRefCF.cpp

    r38137 r39817  
    2828
    2929#include "APICast.h"
     30#include "InitializeThreading.h"
    3031#include "JSStringRef.h"
    3132#include "OpaqueJSString.h"
     
    3637JSStringRef JSStringCreateWithCFString(CFStringRef string)
    3738{
     39    JSC::initializeThreading();
    3840    CFIndex length = CFStringGetLength(string);
    3941    if (length) {
     
    4547        return OpaqueJSString::create(0, 0).releaseRef();
    4648    }
    47     }
     49}
    4850
    4951CFStringRef JSStringCopyCFString(CFAllocatorRef alloc, JSStringRef string)
Note: See TracChangeset for help on using the changeset viewer.