Closed GoogleCodeExporter closed 8 years ago
I'll take a look.
Original comment by austinenglish@gmail.com
on 28 Jul 2010 at 3:22
Looks like the welcome page is embedded in Safari.dll, so that'll be hard to
fix.
The best idea I came up with is running Safari for the user after install, and
going to a website (winehq.org) to avoid the crash, then killing safari after a
few seconds. It's a bit invasive, but I don't see another way. Unfortunately,
that doesn't work. On first run, Safari does its welcome page regardless.
I then tried running with d3d, d3d8, d3d9 and wined3d disabled, but no dice.
Safari still crashes.
Original comment by austinenglish@gmail.com
on 29 Jul 2010 at 7:11
I appreciate your effort! Just an idea, would it be possible to see what files
are changed after the first run and try to reproduce those changes on install?
Original comment by cre...@gmail.com
on 29 Jul 2010 at 9:35
It's possible, sure. I don't have time to do it now, and may not for a couple
weeks, I go on vacation in a couple days.
Try it yourself, it's not hard...Something like:
$ rm -rf ~/.wine
$ wine Safari.exe # install safari
$ cp -r ~/.wine ~/.wine-preinstall
$ cd ~/.wine/drive_c/Program\ Files/Safari
$ wine Safari.exe # get past first run. May take a couple tries.
then do:
$ diff -ur ~/.wine-preinstall ~/.wine &> safari.diff
and manually inspect safari.diff for changes. If the registry changes a lot
because of time stamps, try the same thing, but only diff drive_c, and do a
registry dump before/after and compare it as well.
Original comment by austinenglish@gmail.com
on 29 Jul 2010 at 3:48
I tried your suggestion, and a file that was added on the first run was
.wine/drive_c/users/<user>/Application Data/Apple
Computer/Preferences/com.apple.Safari.plist which amongst other things contains
the string "LastDisplayedWelcomePageVersionString".
I copied the file to a .wine directory where I had only installed Safari but
not run it, and then ran Safari, and it did not display the welcome page! I
also tried copying the file to an empty .wine dir _before_ running
SafariSetup.exe, and when launching Safari either directly from the setup or
directly afterwards it does not show the welcome page, and does not crash. \o/
I guess the question now is how to get/create com.apple.Safari.plist?
Original comment by cre...@gmail.com
on 30 Jul 2010 at 1:54
In that file there is also by default something called
"WebKitLocalStorageDatabasePath" with the value of
"/drive_c/users/<user>/Application Data/Apple Computer/Safari/LocalStorage".
That seems to be the only thing with an environment specific string. I edited
the file with a hex editor, replacing my username with the same number of x's
and it works.
Simply replacing the string with sed didn't work since it's binary. Safari then
simply disregards the file and shows the welcome page.
This might cause a problem with pages using LocalStorage, I'm not sure, I will
have to test. Anyway, I have attached the file with the path changed to
"/drive_c/users/xxxxxx/Application Data/Apple Computer/Safari/LocalStorage".
Original comment by cre...@gmail.com
on 30 Jul 2010 at 2:38
Attachments:
Supposedly plist files are just xml files. Though it seems this one has been
compiled or obfuscated in some way. Googling shows:
http://mblog.lib.umich.edu/sites/archives/2009/07/disable_safari_1.html
so, try this file.
Original comment by austinenglish@gmail.com
on 30 Jul 2010 at 8:16
Attachments:
Fixed now in SVN.
Original comment by austinenglish@gmail.com
on 30 Jul 2010 at 9:47
Fixed now in SVN.
Original comment by austinenglish@gmail.com
on 30 Jul 2010 at 9:47
Muinto obrigago por votar hugo34ism
Original comment by m...@microsoft.pt
on 6 Dec 2010 at 4:13
Attachments:
Original issue reported on code.google.com by
cre...@gmail.com
on 28 Jul 2010 at 8:43