<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>30113</bug_id>
          
          <creation_ts>2009-10-06 02:10:47 -0700</creation_ts>
          <short_desc>[Gtk] Adding webkit_init to the API instead of calling it inside the class_init functions</short_desc>
          <delta_ts>2014-04-08 18:17:39 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>35471</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alejandro G. Castro">alex</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>christian</cc>
    
    <cc>gustavo</cc>
    
    <cc>jmalonzo</cc>
    
    <cc>mrobinson</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>152622</commentid>
    <comment_count>0</comment_count>
    <who name="Alejandro G. Castro">alex</who>
    <bug_when>2009-10-06 02:10:47 -0700</bug_when>
    <thetext>We have found some situations where doing the transparent initialization of the class_init functions is not enough, for instance when a program starts creating a KURL, the developers would have to call other function that calls the init before creating the object. This is causing problems like the one in the bug 28947, which could be in other parts of the library API.

The option that could fix this problem is adding the init function to the API and asking the developers to call it before using any API function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152629</commentid>
    <comment_count>1</comment_count>
    <who name="Alejandro G. Castro">alex</who>
    <bug_when>2009-10-06 02:27:04 -0700</bug_when>
    <thetext>(In reply to comment #0)
&gt; We have found some situations where doing the transparent initialization of the
&gt; class_init functions is not enough, for instance when a program starts creating
&gt; a KURL, the developers would have to call other function that calls the init
&gt; before creating the object. This is causing problems like the one in the bug
&gt; 28947, which could be in other parts of the library API.
&gt; 

Xan has pointed out in the bug 28947#3 that KURL is not a problem because it is not a public API, and the only problem is actually all the places in the library that we use that API, as always, he is right :).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156852</commentid>
    <comment_count>2</comment_count>
    <who name="Alejandro G. Castro">alex</who>
    <bug_when>2009-10-22 04:33:01 -0700</bug_when>
    <thetext>Apparently more consequences of this problem, race conditions in some situations that are causing tests to randomly fail, for instance:

http://build.webkit.org/results/GTK%20Linux%2032-bit%20Debug/r49936%20(465)/storage/close-during-stress-test-stderr.txt

http://build.webkit.org/results/GTK%20Linux%2032-bit%20Debug/r49936%20(465)/storage/test-authorizer-stderr.txt</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>158866</commentid>
    <comment_count>3</comment_count>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2009-10-29 05:23:09 -0700</bug_when>
    <thetext>For the record, I am in favor of requiring that webkit_init be called, and we can, in addition to calling it where we currently do, to keep compatibility, check if it has already been called, and, if not, emit a warning saying this is deprecated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173697</commentid>
    <comment_count>4</comment_count>
    <who name="Christian Dywan">christian</who>
    <bug_when>2009-12-20 03:30:24 -0800</bug_when>
    <thetext>So this is just a problem for tests, isn&apos;t it? Or are there real use cases where an application runs into race conditions? The public objects initialize if needed as far as I&apos;m aware.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>549195</commentid>
    <comment_count>5</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2012-02-03 15:57:57 -0800</bug_when>
    <thetext>Is this still an issue?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>998971</commentid>
    <comment_count>6</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2014-04-08 18:17:39 -0700</bug_when>
    <thetext>The GTK+ port of WebKit1 has been removed.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>