timeless wrote:
> On Jul 25, 6:24 pm, Robin Berjon <[EMAIL PROTECTED]> wrote:
>> Hello,
>>
>> I'm working on a rather large Gecko-based app, and I'm hitting on
>> some pains that seem due to Gecko either caching XPCOM IDL
>> definitions, or giving some priority to XPTs that I don't know where
>> to find. The process I use to hack on the JS XPCOM bits is this:
>>
>> - modify JS (and if applicable the IDL, in which case the XPT is
>> regenerated)
>> - kill the app
>> - copy the modified JS and XPT to $MY_INST/xulrunner/components
>> - kill $MY_PROFILE/xpti.dat and compreg.dat
>> - restart the app
>>
>> Now this works in two cases:
>>
>> - either this is a completely new interface that has not yet been
>> added to the build
>> - or only the JS has been modified
>>
>> But if the IDL/XPT has changed, then it's not taken into account
>> unless I commit and wait for a build to come out from our farm. I
>> tried changing the UUID and ProgID in the hope that that might work
>> (despite being cumbersome) but it doesn't fly. Renaming the interface
>> works but that means changing a lot of code uselessly every time.
>>
>> So is there a way of getting Gecko to pick up the new XPT correctly
>> that I haven't found?
>
> in some scenarios xpti.dat/compreg.dat live in a profile directory,
> something like:
> C:\home\Application Data\Mozilla\Firefox\Profiles\RANDOM.MineField
>
> 07/22/07 02:52 AM 98,592 xpti.dat
> 07/22/07 02:52 AM 149,802 compreg.dat
>
> In the old days, .autoreg was your friend.
>
To say the same thing differently: if the app acts as if your .xpt has
not been updated, then it probably has not been updated. You might try
deleting your .xpt then running. I guess you will succeed because the
farm build is reading .xpt from somewhere else. Other hints: read the
compreg.dat and xpti.dat files; the idl files are source, only the .xpt
are used at run time; xpti.dat only needs to be rebuilt if .xpt changes;
compreg.dat only needs to be rebuilt if components/*.js changes.
_______________________________________________
dev-tech-xpcom mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-xpcom