Skip to content
Permalink
Browse files
Modernize WebThread code for further refactoring
https://bugs.webkit.org/show_bug.cgi?id=180344

Reviewed by Alex Christensen.

When touching Thread and its initialization component, we need to touch
web thread initialization code too. However, since web thread code is old,
it's style is not following to WebKit coding style guidelines.

This patch first modernizes WebThread code for further refactoring.

1. `Type*` instead of `Type *`.
2. Use std::call_once instead of pthread_once.
3. Use static_cast instead of C-cast.
4. Use nullptr instead of NULL.
5. Use `ret` or `!ret` instead of `ret != 0` or `ret == 0`.
6. Do not use #pragma unused.
7. if-else with one statement should not have braces.

In this patch, we do not change pthread_condition_t to WTF::Condition and
pthread_mutex_t to WTF::Lock since web thread code requires extra care about
threading.

No behavior change.

* platform/ios/wak/WebCoreThread.mm:
(-[NSObject releaseOnMainThread]):
(SendMessage):
(HandleDelegateSource):
(SendDelegateMessage):
(WebThreadAdoptAndRelease):
(lockWebCoreReleaseLock):
(unlockWebCoreReleaseLock):
(WebCoreObjCDeallocOnWebThreadImpl):
(WebCoreObjCDeallocWithWebThreadLockImpl):
(HandleWebThreadReleaseSource):
(WebThreadCallDelegate):
(WebThreadPostNotification):
(WebThreadCallDelegateAsync):
(WebThreadMakeNSInvocation):
(MainRunLoopAutoUnlock):
(_WebThreadAutoLock):
(WebRunLoopLock):
(WebRunLoopUnlock):
(MainRunLoopUnlockGuard):
(CurrentThreadContext):
(RunWebThread):
(StartWebThread):
(WebTimedConditionLock):
(_WebTryThreadLock):
(WebThreadUnlockFromAnyThread):
(WebThreadUnlockGuardForMail):
(_WebThreadUnlock):
(WebThreadIsLocked):
(WebThreadLockPopModal):
(WebThreadCurrentContext):
(WebThreadEnable):
(FreeThreadContext): Deleted.
(InitThreadContextKey): Deleted.


Canonical link: https://commits.webkit.org/196365@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@225529 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information
Constellation committed Dec 5, 2017
1 parent 5303d16 commit fdba3a910079f462cd69d59adb38b68590eae78e
Showing 2 changed files with 206 additions and 180 deletions.
@@ -1,3 +1,65 @@
2017-12-05 Yusuke Suzuki <utatane.tea@gmail.com>

Modernize WebThread code for further refactoring
https://bugs.webkit.org/show_bug.cgi?id=180344

Reviewed by Alex Christensen.

When touching Thread and its initialization component, we need to touch
web thread initialization code too. However, since web thread code is old,
it's style is not following to WebKit coding style guidelines.

This patch first modernizes WebThread code for further refactoring.

1. `Type*` instead of `Type *`.
2. Use std::call_once instead of pthread_once.
3. Use static_cast instead of C-cast.
4. Use nullptr instead of NULL.
5. Use `ret` or `!ret` instead of `ret != 0` or `ret == 0`.
6. Do not use #pragma unused.
7. if-else with one statement should not have braces.

In this patch, we do not change pthread_condition_t to WTF::Condition and
pthread_mutex_t to WTF::Lock since web thread code requires extra care about
threading.

No behavior change.

* platform/ios/wak/WebCoreThread.mm:
(-[NSObject releaseOnMainThread]):
(SendMessage):
(HandleDelegateSource):
(SendDelegateMessage):
(WebThreadAdoptAndRelease):
(lockWebCoreReleaseLock):
(unlockWebCoreReleaseLock):
(WebCoreObjCDeallocOnWebThreadImpl):
(WebCoreObjCDeallocWithWebThreadLockImpl):
(HandleWebThreadReleaseSource):
(WebThreadCallDelegate):
(WebThreadPostNotification):
(WebThreadCallDelegateAsync):
(WebThreadMakeNSInvocation):
(MainRunLoopAutoUnlock):
(_WebThreadAutoLock):
(WebRunLoopLock):
(WebRunLoopUnlock):
(MainRunLoopUnlockGuard):
(CurrentThreadContext):
(RunWebThread):
(StartWebThread):
(WebTimedConditionLock):
(_WebTryThreadLock):
(WebThreadUnlockFromAnyThread):
(WebThreadUnlockGuardForMail):
(_WebThreadUnlock):
(WebThreadIsLocked):
(WebThreadLockPopModal):
(WebThreadCurrentContext):
(WebThreadEnable):
(FreeThreadContext): Deleted.
(InitThreadContextKey): Deleted.

2017-12-05 Alex Christensen <achristensen@webkit.org>

Fix non-unified build after r225381

0 comments on commit fdba3a9

Please sign in to comment.