Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion Groups
General
GeneralPortable MacsHardwareNetworking
Applications
Mac ApplicationsEudoraFirefox / MozillaInternet ExplorerOutlook ExpressMS OfficeEntourageExcelPowerPointWordVirtual PCMedia PlayerOther MS Products
Programming
Mac ProgrammingCodeWarriorPerl
Country Specific
Australian Mac GroupUK Mac Group

Mac Forum / Programming / Mac Programming / June 2007



Tip: Looking for answers? Try searching our database.

Safari for Microsoft Windows: How did Apple develop it?

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Cy - 20 Jun 2007 00:56 GMT
Did they use XCode, Objective-C, Cocoa? Or GCC + GUI libs? or Visual
Studio?

Anyone know? I want to do the same.
Michael Ash - 20 Jun 2007 02:31 GMT
> Did they use XCode, Objective-C, Cocoa? Or GCC + GUI libs? or Visual
> Studio?
>
> Anyone know? I want to do the same.

A brief look at the open source bits of Safari (WebKit/WebCore) reveals
C++ plus Visual Studio, no Cocoa in sight. Presumably the closed source
bits follow the same pattern.

It's a good illustration of the pattern which many in here advocate any
time someone asks how to do a cross-platform app. Write a portable
implementation of your core (WebKit), then write a custom,
platform-specific GUI for it on each operating system you want to support.

Although in Apple's case, they deliberately made their application look
(and I assume act) very non-Windows-like, so it's not *that* good of an
illustration.

Signature

Michael Ash
Rogue Amoeba Software

Nick Tamburri - 20 Jun 2007 20:36 GMT
> A brief look at the open source bits of Safari (WebKit/WebCore) reveals
> C++ plus Visual Studio, no Cocoa in sight. Presumably the closed source
> bits follow the same pattern.

I forget which podcast I heard it on, but someone looked at the .DLL
files that were loaded by Safari on Windows and they determined that a
lot of the Foundation and Cocoa frameworks were being installed along
with the browser. I don't have a Windows box, so I couldn't verify it
for myself.

The podcasters postulated this could be Apple's initial probe to see
if it is worth bringing it's iLife suite to Windows.  Personally I
don't think so, but I didn't think iPods would sell very well either.

                                               /nt
Signature

Delete this if you want to reply.

Michael Ash - 21 Jun 2007 05:36 GMT
>> A brief look at the open source bits of Safari (WebKit/WebCore) reveals
>> C++ plus Visual Studio, no Cocoa in sight. Presumably the closed source
[quoted text clipped - 5 lines]
> with the browser. I don't have a Windows box, so I couldn't verify it
> for myself.

It's possible that you or the podcasters were confusing the CoreFoundation
and CoreGraphics DLLs which do ship with Safari with Foundation and Cocoa
which don't. Note that CF and CG are pure C.

> The podcasters postulated this could be Apple's initial probe to see
> if it is worth bringing it's iLife suite to Windows.  Personally I
> don't think so, but I didn't think iPods would sell very well either.

Color me doubtful as well. Apple doesn't seem interested in selling
software for non-Mac platforms (it seems to me that QuickTime Pro is the
only exception to this, but I could be wrong) and iLife really exists to
give people more reasons to buy a Mac, so porting it would totally defeat
the purpose.

Signature

Michael Ash
Rogue Amoeba Software

Cy - 21 Jun 2007 23:30 GMT
Ahh, guys have you been listening to Steve Jobs lately? All he says
anymore is that Apple is a software company. The hardware is
incidental.

Based on your posts, I would say Apple is headed full bore into the
World of Windows for Apple Apps (WoWAA) ;-) I get full credit for
inventing this new TLA++.
Nick Tamburri - 22 Jun 2007 15:43 GMT
> It's possible that you or the podcasters were confusing the CoreFoundation
> and CoreGraphics DLLs which do ship with Safari with Foundation and Cocoa
> which don't. Note that CF and CG are pure C.

That's definitely possible; my mind isn't what it used to be.  I
haven't been able to find the reference and it's not really worth
spending more time on it. I assume that most of the heavy lifting was
done long ago when they had to port WebKit over for iTunes' use
anyway.

Any comments on why Safari 3 Windows was vulnerable to security
breaches but not Safari 3 Mac?

                                               /nt
Signature

Delete this to reply.

Patrick Machielse - 22 Jun 2007 17:31 GMT
> I assume that most of the heavy lifting was
> done long ago when they had to port WebKit over for iTunes' use
> anyway.

Ah, but iTunes doesn't use WebKit...

patrick
Michael Ash - 22 Jun 2007 18:21 GMT
> Any comments on why Safari 3 Windows was vulnerable to security
> breaches but not Safari 3 Mac?

The one I actually read about enough to know how it works involved an URL
escaping vulnerability that's specific to Windows. Basically, when passing
an URL scheme off to another app to handle it on Windows, it's done by
executing a command with the URL as a command line argument. The
vulnerability came from inadequate escaping in the URL, so that you could
pass an URL like "somescheme://blahblahblah>foo|del *.*" and the DOS
command shell would execute the second part of it as a command. Mac OS X
doesn't suffer from this because URL handlers get passed via Apple Events
which aren't parsed by any shell. Apparently this same vulnerability was
present in Firefox, so it's sort of a Windows problem.

No doubt the other vulnerabilities were either Windows specific or
specific to Safari's Windows code, but I don't know enough about them to
say for sure.

Signature

Michael Ash
Rogue Amoeba Software

 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.