Bug 44954

Summary: [WML] Remove create() function in WMLTaskElement because of build breaks.
Product: WebKit Reporter: Gyuyoung Kim <gyuyoung.kim>
Component: WebCore Misc.Assignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: abarth, commit-queue, eric, krit
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: Linux   
Attachments:
Description Flags
Patch
krit: review-, krit: commit-queue-
Patch none

Gyuyoung Kim
Reported 2010-08-31 08:00:52 PDT
There is a build break when WML is enabled. It seems to me that executeTask() is needed to implement because the create function is added. /home/gyuyoung/webkit/WebKit-EFL/WebCore/wml/WMLTaskElement.cpp: In static member function ‘static WTF::PassRefPtr<WebCore::WMLTaskElement> WebCore::WMLTaskElement::create(const WebCore::QualifiedName&, WebCore::Document*)’: /home/gyuyoung/webkit/WebKit-EFL/WebCore/wml/WMLTaskElement.cpp:44: error: cannot allocate an object of abstract type ‘WebCore::WMLTaskElement’ /home/gyuyoung/webkit/WebKit-EFL/WebCore/wml/WMLTaskElement.h:34: note: because the following virtual functions are pure within ‘WebCore::WMLTaskElement’: /home/gyuyoung/webkit/WebKit-EFL/WebCore/wml/WMLTaskElement.h:45: note: virtual void WebCore::WMLTaskElement::executeTask() make[2]: *** [WebCore/CMakeFiles/webcore_efl.dir/wml/WMLTaskElement.cpp.o] Error 1
Attachments
Patch (1.54 KB, patch)
2010-08-31 08:04 PDT, Gyuyoung Kim
krit: review-
krit: commit-queue-
Patch (1.88 KB, patch)
2010-09-07 20:26 PDT, Gyuyoung Kim
no flags
Gyuyoung Kim
Comment 1 2010-08-31 08:04:04 PDT
Dirk Schulze
Comment 2 2010-09-07 00:19:50 PDT
Do we ever create a WMLTaskElement? It looks like it is just the base class for: WMLGoElement.h:class WMLGoElement : public WMLTaskElement { WMLPrevElement.h:class WMLPrevElement : public WMLTaskElement { WMLRefreshElement.h:class WMLRefreshElement : public WMLTaskElement { So maybe it's better to remove the 'create' here and move the CTor to protected, the same for the DTor: protected: WMLTaskElement(const QualifiedName& tagName, Document*); virtual ~WMLTaskElement(); Can you test this please? I'm also confused, that we don't have 'create' for the elements mentioned above (Go, Prev, Refresh).
Dirk Schulze
Comment 3 2010-09-07 08:53:10 PDT
Comment on attachment 66054 [details] Patch r- because of the comment before.
Gyuyoung Kim
Comment 4 2010-09-07 20:26:36 PDT
Created attachment 66837 [details] Patch When I modify this patch with your guidance, there are no build break. As you know, the build break came from the create(). So, if we remove the create() in WMLTaskElement.cpp, I think we should find which class uses the create() function. But, I can't find classes which invokes the create() from WMLTaskElement.cpp. >> I'm also confused, that we don't have 'create' for the elements mentioned above (Go, Prev, Refresh). The three elements you mentioned have create() functions as below. The create() of WMLTaskCreate is not invoked by other classes. If we need to make the create() function for WMLTaskElement, I think we can make it again. For now, this patch is needed to fix build break. How do you think about it ? ================================================================================================ 53 PassRefPtr<WMLGoElement> WMLGoElement::create(const QualifiedName& tagName, Document* document) 54 { 39 PassRefPtr<WMLPrevElement> WMLPrevElement::create(const QualifiedName& tagName, Document* document) 40 { 40 PassRefPtr<WMLRefreshElement> WMLRefreshElement::create(const QualifiedName& tagName, Document* document) 41 { ================================================================================================
Dirk Schulze
Comment 5 2010-09-07 23:35:05 PDT
WebKit Commit Bot
Comment 6 2010-09-08 06:46:41 PDT
Comment on attachment 66837 [details] Patch Clearing flags on attachment: 66837 Committed r66978: <http://trac.webkit.org/changeset/66978>
WebKit Commit Bot
Comment 7 2010-09-08 06:46:46 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.