A month ago, I ran into this problem. At first I thought it was a spoiled jug, as I can clear the cookies and leave.
However, he reappeared. This time I spent an hour going through it, seeing what was sent, seeing what sent the safari, and I found the problem.
In this case, I had an array of cookie values sent to the browser after logging in before being redirected. The values looked something like "user id", "full username", "other identifier", etc.
(yes, the identifier is encrypted, so no worries)
The full username was in the format <lastname>, <firstname> .
When safari sent the cookie back to the server, everything is after the decimal point after the last name has been deleted. It was only posting values to this point.
When I removed the comma, the rest of the values started working fine.
So, it seems that if you send a cookie containing a comma, then safari does not allow this to be avoided in the internal storage. This makes me think that if they don't escape because of commas, then there are probably some security issues with the safari cookie handling code.
By the way, this was tested on Win 7 x64 with safari 4.0.5. I also posted a webpage at http://cookietest.livelyconsulting.com/ which shows this exact problem. (I deleted this test site)
IE, FF, and Chrome all set cookies correctly. no safari.
NotMe May 06 '10 at 16:00 2010-05-06 16:00
source share