Bug 141791

Summary: Move more CoreMedia soft-linked functions to CoreMediaSoftLink.{cpp,h}
Product: WebKit Reporter: David Kilzer (:ddkilzer) <ddkilzer>
Component: WebCore Misc.Assignee: David Kilzer (:ddkilzer) <ddkilzer>
Status: RESOLVED FIXED    
Severity: Normal CC: achristensen, bfulgham, commit-queue, eric.carlson, jer.noble
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 141625    
Attachments:
Description Flags
Patch v1
none
Patch v2
none
Patch v3
none
Patch v4
none
Patch v5
ap: review+
Patch v6 (for EWS build test) none

David Kilzer (:ddkilzer)
Reported 2015-02-18 21:47:19 PST
Move more CoreMedia soft-linked functions to CoreMediaSoftLink.{cpp,h} This does not move every function, but probably gets about half of the ones remaining.
Attachments
Patch v1 (26.91 KB, patch)
2015-02-18 22:04 PST, David Kilzer (:ddkilzer)
no flags
Patch v2 (27.64 KB, patch)
2015-02-18 22:26 PST, David Kilzer (:ddkilzer)
no flags
Patch v3 (27.88 KB, patch)
2015-02-19 07:18 PST, David Kilzer (:ddkilzer)
no flags
Patch v4 (27.51 KB, patch)
2015-02-19 07:40 PST, David Kilzer (:ddkilzer)
no flags
Patch v5 (34.28 KB, patch)
2015-02-19 09:13 PST, David Kilzer (:ddkilzer)
ap: review+
Patch v6 (for EWS build test) (35.86 KB, patch)
2015-02-19 13:49 PST, David Kilzer (:ddkilzer)
no flags
David Kilzer (:ddkilzer)
Comment 1 2015-02-18 22:04:04 PST
Created attachment 246879 [details] Patch v1
David Kilzer (:ddkilzer)
Comment 2 2015-02-18 22:05:14 PST
(In reply to comment #0) > Move more CoreMedia soft-linked functions to CoreMediaSoftLink.{cpp,h} > > This does not move every function, but probably gets about half of the ones > remaining. And by half I really mean closer to one-third.
David Kilzer (:ddkilzer)
Comment 3 2015-02-18 22:26:26 PST
Created attachment 246881 [details] Patch v2
David Kilzer (:ddkilzer)
Comment 4 2015-02-19 07:18:16 PST
Created attachment 246892 [details] Patch v3
David Kilzer (:ddkilzer)
Comment 5 2015-02-19 07:21:33 PST
(In reply to comment #4) > Created attachment 246892 [details] > Patch v3 Added CMTimeCompare() soft-link macros. Not sure how I missed those.
David Kilzer (:ddkilzer)
Comment 6 2015-02-19 07:31:21 PST
(In reply to comment #3) > Created attachment 246881 [details] > Patch v2 The change from Patch v1 was to move these declarations into the CoreMediaSoftLink.{cpp,h} files: typedef struct opaqueCMNotificationCenter* CMNotificationCenterRef; 43 typedef void (*CMNotificationCallback)(CMNotificationCenterRef inCenter, const void *inListener, CFStringRef inNotificationName, const void *inNotifyingObject, CFTypeRef inNotificationPayload); However, this is SPI from the CMNotificationCenter.h "private" header, so it should go into its own *SPI.h header along with definitions for these functions: CMNotificationCenterGetDefaultLocalCenter CMNotificationCenterAddListener CMNotificationCenterRemoveListener Patch v4 forthcoming.
David Kilzer (:ddkilzer)
Comment 7 2015-02-19 07:37:17 PST
(In reply to comment #6) > (In reply to comment #3) > > Created attachment 246881 [details] > > Patch v2 > > The change from Patch v1 was to move these declarations into the > CoreMediaSoftLink.{cpp,h} files: > > typedef struct opaqueCMNotificationCenter* CMNotificationCenterRef; > 43 typedef void (*CMNotificationCallback)(CMNotificationCenterRef inCenter, > const void *inListener, CFStringRef inNotificationName, const void > *inNotifyingObject, CFTypeRef inNotificationPayload); > > However, this is SPI from the CMNotificationCenter.h "private" header, so it > should go into its own *SPI.h header along with definitions for these > functions: > > CMNotificationCenterGetDefaultLocalCenter > CMNotificationCenterAddListener > CMNotificationCenterRemoveListener > > Patch v4 forthcoming. Oops, I was wrong, CMNotificationCenter.h is API. Patch v4 still forthcoming.
David Kilzer (:ddkilzer)
Comment 8 2015-02-19 07:40:14 PST
Created attachment 246893 [details] Patch v4
Brent Fulgham
Comment 9 2015-02-19 08:35:39 PST
Comment on attachment 246893 [details] Patch v4 View in context: https://bugs.webkit.org/attachment.cgi?id=246893&action=review > Source/WebCore/ChangeLog:48 > + - Remove only CoreMedia soft-linked funtion. It wasn't even function! :-P
David Kilzer (:ddkilzer)
Comment 10 2015-02-19 08:36:05 PST
(In reply to comment #7) > (In reply to comment #6) > > (In reply to comment #3) > > > Created attachment 246881 [details] > > > Patch v2 > > > > The change from Patch v1 was to move these declarations into the > > CoreMediaSoftLink.{cpp,h} files: > > > > typedef struct opaqueCMNotificationCenter* CMNotificationCenterRef; > > 43 typedef void (*CMNotificationCallback)(CMNotificationCenterRef inCenter, > > const void *inListener, CFStringRef inNotificationName, const void > > *inNotifyingObject, CFTypeRef inNotificationPayload); > > > > However, this is SPI from the CMNotificationCenter.h "private" header, so it > > should go into its own *SPI.h header along with definitions for these > > functions: > > > > CMNotificationCenterGetDefaultLocalCenter > > CMNotificationCenterAddListener > > CMNotificationCenterRemoveListener > > > > Patch v4 forthcoming. > > Oops, I was wrong, CMNotificationCenter.h is API. Patch v4 still > forthcoming. I was correct the first time. Need a CoreMediaSPI.h header. Good times.
David Kilzer (:ddkilzer)
Comment 11 2015-02-19 09:08:14 PST
(In reply to comment #9) > Comment on attachment 246893 [details] > Patch v4 > > View in context: > https://bugs.webkit.org/attachment.cgi?id=246893&action=review > > > Source/WebCore/ChangeLog:48 > > + - Remove only CoreMedia soft-linked funtion. It wasn't even > > function! :-P check-webkit-style neads spel cheek fer ChangLoogs!
David Kilzer (:ddkilzer)
Comment 12 2015-02-19 09:13:59 PST
Created attachment 246894 [details] Patch v5
WebKit Commit Bot
Comment 13 2015-02-19 09:15:54 PST
Attachment 246894 [details] did not pass style-queue: ERROR: Source/WebCore/platform/cf/CoreMediaSoftLink.cpp:29: Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted. [build/include_order] [4] Total errors found: 1 in 17 files If any of these errors are false positives, please file a bug against check-webkit-style.
Alexey Proskuryakov
Comment 14 2015-02-19 09:50:55 PST
Comment on attachment 246894 [details] Patch v5 r=me, please fix the build.
Alex Christensen
Comment 15 2015-02-19 10:28:07 PST
Adding platform\spi\cf to AdditionalIncludeDirectories in WebCore.vcxproj/WebCoreCFNetwork.props should fix Windows.
Brent Fulgham
Comment 16 2015-02-19 10:39:54 PST
(In reply to comment #15) > Adding platform\spi\cf to AdditionalIncludeDirectories in > WebCore.vcxproj/WebCoreCFNetwork.props should fix Windows. Yes -- this is the right thing to correct the build.
David Kilzer (:ddkilzer)
Comment 17 2015-02-19 11:00:17 PST
(In reply to comment #16) > (In reply to comment #15) > > Adding platform\spi\cf to AdditionalIncludeDirectories in > > WebCore.vcxproj/WebCoreCFNetwork.props should fix Windows. > > Yes -- this is the right thing to correct the build. Instead of adding an entry to Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters?
Alex Christensen
Comment 18 2015-02-19 11:07:57 PST
Do both. WebCore.vcxproj.filters tells Visual Studio where to display the header file, but it does not affect compiling. AdditionalIncludeDirectories adds basically a -I flag to the compiler.
David Kilzer (:ddkilzer)
Comment 19 2015-02-19 13:49:04 PST
Created attachment 246916 [details] Patch v6 (for EWS build test)
David Kilzer (:ddkilzer)
Comment 20 2015-02-19 14:43:17 PST
Note You need to log in before you can comment on or make changes to this bug.