Re: Wine Gecko 1.2.0 beta1

2011-01-31 Thread Eric Pouech



- dbghelp fixes
winedbg has problems with debug info from Gecko debug build, making 
debugging possibilities quite limited and backtraces lacking most of 
the calls. This is not related to Gecko release itself, but still it 
would be great to have it fixed.

what are your favorite steps to reproduce this ?
A+

--
Eric Pouech
"The problem with designing something completely foolproof is to underestimate the 
ingenuity of a complete idiot." (Douglas Adams)





Re: Wine Gecko 1.2.0 beta1

2011-01-31 Thread Jacek Caban

On 1/31/11 6:59 PM, Jacek Caban wrote:

[1] http://sourceforge.net/projects/wine/files/Wine%20Gecko/1.2.0-beta1/


Sourceforge seems to have strange problems now. It closes connection 
just after downloading starts. Hopefully it will be fixed soon.


Jacek




Wine Gecko 1.2.0 beta1

2011-01-31 Thread Jacek Caban

Hi all,

We're nearing the time for the next Gecko update. Beta builds are done 
and available on Sourceforge [1]. To use them, you need to download the 
.cab file, put it as you usually do into the right directory (most 
likely wine_gecko-1.2.0-beta1-x86.cab, see [2] for details) and apply 
the attached patch to recent Wine git version.


The plan for release is other than we usually did and we have still some 
work to do. I hope to do the release short after Firefox 4 release, 
which is scheduled for the end of February. Firefox is nearing final 
beta and we will branch together with RC branch for Firefox 4. This 
should give us more stability in the code base than we usually had. 
We've never succeeded in avoiding regressions with the new Gecko 
releases and I hope to improve this situation. This early beta build is 
one part of the plan. It would be great if you could use it for some 
time or try some apps with it. I'm most interested in reports about 
regression, but also general stability and improvements.


* Changes

- We use Firefox 4 beta11pre codebase
- Some regression caused by integration with new parser are fixed 
(affected among others CS4 installer, STO, EQ2)
- IO fixes for custom protocol handlers, mostly affecting .chm files and 
Outlook


If you hit a blank-page bug, some page elements don't work or just a 
crash, there is a big chance that this build will fix it. Of course it's 
always nice to test everything regardless if it's currently working or not.


* TODO

- win64 fix
It currently crashes, that's a regression. I've decided to do the beta 
release anyways, but it's an obvious blocker for further releases. I've 
put win64 builds on Sourceforge in case anyone is interested in looking 
at them, but the problem seems to be in the build, not in Wine.


- MSI packages
This beta still uses .cab files done on Windows. We're planning to do 
some work on it with Hans and Alexandre so that the final release will 
use MSI files.


- dbghelp fixes
winedbg has problems with debug info from Gecko debug build, making 
debugging possibilities quite limited and backtraces lacking most of the 
calls. This is not related to Gecko release itself, but still it would 
be great to have it fixed.


- Getting rid of ugly hacks that Firefox uses
Esp. API hooks. I don't think it's acceptable for us.

- Tests and fixes
The more tests, the better. I really hope to get community help here.

* For packagers

If you're considering building the next Gecko release yourself, it's 
probably a good idea to try the compilation now. It requires very recent 
mingw-w64, so a package update (or creating a new package if it's not 
yet available for the distro) will most likely be needed.


Thanks,
Jacek


[1] http://sourceforge.net/projects/wine/files/Wine%20Gecko/1.2.0-beta1/
[2] http://wiki.winehq.org/Gecko


diff --git a/dlls/appwiz.cpl/addons.c b/dlls/appwiz.cpl/addons.c
index d19af66..e1f98af 100644
--- a/dlls/appwiz.cpl/addons.c
+++ b/dlls/appwiz.cpl/addons.c
@@ -50,7 +50,7 @@
 
 WINE_DEFAULT_DEBUG_CHANNEL(appwizcpl);
 
-#define GECKO_VERSION "1.1.0"
+#define GECKO_VERSION "1.2.0-beta1"
 
 #ifdef __i386__
 #define ARCH_STRING "x86"
diff --git a/dlls/mshtml/mutation.c b/dlls/mshtml/mutation.c
index c4f7945..12ae351 100644
--- a/dlls/mshtml/mutation.c
+++ b/dlls/mshtml/mutation.c
@@ -305,9 +305,10 @@ static nsresult run_end_load(HTMLDocumentNode *This, 
nsISupports *arg1, nsISuppo
 return NS_OK;
 }
 
-static nsresult run_insert_script(HTMLDocumentNode *doc, nsISupports 
*script_iface, nsISupports *arg)
+static nsresult run_insert_script(HTMLDocumentNode *doc, nsISupports 
*script_iface, nsISupports *parser_iface)
 {
 nsIDOMHTMLScriptElement *nsscript;
+nsIParser *nsparser = NULL;
 nsresult nsres;
 
 TRACE("(%p)->(%p)\n", doc, script_iface);
@@ -318,7 +319,24 @@ static nsresult run_insert_script(HTMLDocumentNode *doc, 
nsISupports *script_ifa
 return nsres;
 }
 
+if(parser_iface) {
+nsres = nsISupports_QueryInterface(parser_iface, &IID_nsIParser, 
(void**)&nsparser);
+if(NS_FAILED(nsres)) {
+ERR("Could not get nsIParser iface: %08x\n", nsres);
+nsparser = NULL;
+}
+}
+
+if(nsparser)
+nsIParser_BeginEvaluatingParserInsertedScript(nsparser);
+
 doc_insert_script(doc->basedoc.window, nsscript);
+
+if(nsparser) {
+nsIParser_EndEvaluatingParserInsertedScript(nsparser);
+nsIParser_Release(nsparser);
+}
+
 nsIDOMHTMLScriptElement_Release(nsscript);
 return NS_OK;
 }
@@ -557,12 +575,12 @@ static void NSAPI 
nsDocumentObserver_EndLoad(nsIDocumentObserver *iface, nsIDocu
 }
 
 static void NSAPI nsDocumentObserver_ContentStatesChanged(nsIDocumentObserver 
*iface, nsIDocument *aDocument,
-nsIContent *aContent1, nsIContent *aContent2, PRInt32 aStateMask)
+nsIContent *aContent1, nsIContent *aContent2, nsEventStates aStateMask)
 {
 }
 
 static void NSAPI nsDocumentObserver_Document