diff --git a/main.py b/main.py
index 22e6fa4..fda8103 100755
--- a/main.py
+++ b/main.py
@@ -276,10 +276,17 @@
 class _BasicAuthHandler(urllib2.HTTPBasicAuthHandler):
   def http_error_auth_reqed(self, authreq, host, req, headers):
     try:
+      old_add_header = req.add_header
+      def _add_header(name, val):
+        val = val.replace('\n', '')
+        old_add_header(name, val)
+      req.add_header = _add_header
       return urllib2.AbstractBasicAuthHandler.http_error_auth_reqed(
         self, authreq, host, req, headers)
     except:
-      self.reset_retry_count()
+      reset = getattr(self, 'reset_retry_count', None)
+      if reset is not None:
+        reset()
       raise
 
 def init_http():
diff --git a/project.py b/project.py
index 4bc54de..b61bcac 100644
--- a/project.py
+++ b/project.py
@@ -29,6 +29,11 @@
 except ImportError:
   import dummy_threading as _threading
 
+try:
+  from os import SEEK_END
+except ImportError:
+  SEEK_END = 2
+
 from color import Coloring
 from git_command import GitCommand
 from git_config import GitConfig, IsId, GetSchemeFromUrl
@@ -1462,7 +1467,7 @@
     done = False
     dest = open(tmpPath, 'a+b')
     try:
-      dest.seek(0, os.SEEK_END)
+      dest.seek(0, SEEK_END)
       pos = dest.tell()
 
       _urllib_lock.acquire()
diff --git a/subcmds/sync.py b/subcmds/sync.py
index 244a560..a3d0692 100644
--- a/subcmds/sync.py
+++ b/subcmds/sync.py
@@ -195,15 +195,11 @@
 
           fetched.add(project.gitdir)
           pm.update()
-        except BaseException, e:
-          # Notify the _Fetch() function about all errors.
+        except _FetchError:
+          err_event.set()
+        except:
           err_event.set()
-
-          # If we got our own _FetchError, we don't want a stack trace.
-          # However, if we got something else (something in Sync_NetworkHalf?),
-          # we'd like one (so re-raise after we've set err_event).
-          if not isinstance(e, _FetchError):
-            raise
+          raise
       finally:
         if did_lock:
           lock.release()
