Thanks Sun. <div><br></div><div>Damn tricky stuff. My experience was with upgrading organic groups to the new entity release. In this case, moving the class to a new file helped because the bootstrap did not attempt to define the group class. </div>
<div><br></div><div>Maybe I was lucky this time round. Hope your patch makes it ! This is going to cause some troubles.</div><div><br><br><div class="gmail_quote">On 24 January 2011 18:47, Daniel F. Kudwien <span dir="ltr">&lt;<a href="mailto:news@unleashedmind.com">news@unleashedmind.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="im">&gt; Using the autoloader protects you from WSOD should the ancestor class<br>
&gt; move to a new file, because it will not attempt to set up the classes<br>
&gt; the moment the module is enabled in the bootstrap.<br>
<br>
</div>This is not true, actually it&#39;s the exact opposite - which happens to be the<br>
topic of this thread.<br>
<br>
Try moving around modules and files in D7.  Try early alpha versions of<br>
Entity module and update to later ones.<br>
<br>
Just try it.  And see how Drupal blows up and leaves you with an almost<br>
unrecoverable state.<br>
<br>
<br>
The root of this problem is that Drupal requires a full bootstrap to flush<br>
all caches and/or to rebuild the class registry.  However, a full bootstrap<br>
means that all .module files are loaded.  Loading all .module files may<br>
contain classes already:<br>
<br>
class Foo extends Bar {<br>
}<br>
<br>
In case Bar was previously contained in<br>
sites/all/modules/bar/includes/controller.inc and now got moved into<br>
sites/all/modules/bar/bar.controller.inc, PHP is unable to find/autoload<br>
Bar, so you get a fatal error upon the class definition of Foo.<br>
<br>
Once you manually resolved the class registry problem, you still won&#39;t be<br>
able to bootstrap, due to <a href="http://drupal.org/node/996236" target="_blank">http://drupal.org/node/996236</a><br>
<br>
sun<br>
<br>
</blockquote></div><br></div>