WE've run into a large number of initialization-error bugs in the observer subsystems in printing. Fixing them means having subtle dependency ordering in constructors (e.g. make sure Foo is initialized before Bar is created because Bar may immediately callback into this object and use Foo).
We should convert all Observer usage to be two-step, e.g. don't start issuing observer callbacks on construction, do it after a Start() function is called or similar.
Comment 1 by skau@chromium.org
, Sep 19 2017Owner: valleau@chromium.org