+ urlv = urllib2.urlopen(UPDATE_URL_VERSION)
+ newversion = urlv.read().strip()
+ if newversion == __version__:
+ downloader.to_screen(u'youtube-dl is up-to-date (' + __version__ + ')')
+ return
+ urlv.close()
+
+ if hasattr(sys, "frozen"): #py2exe
+ directory = os.path.dirname(filename)
+ exe = os.path.abspath(filename)
+ if not os.access(directory, os.W_OK):
+ sys.exit('ERROR: no write permissions on %s' % directory)
+
+ try:
+ urllib.urlretrieve(UPDATE_URL_EXE, exe + '.new')
+ except (IOError, OSError), err:
+ sys.exit('ERROR: unable to download latest version')
+
+ try:
+ bat = os.path.join(directory, 'youtube-dl-updater.bat')
+ b = open(bat, 'w')
+
+ print >> b, """
+timeout /t 5 /nobreak
+move /Y "%s.new" "%s"
+del "%s"
+ """ %(exe, exe, bat)
+
+ b.close()
+
+ os.startfile(bat)
+ except (IOError, OSError), err:
+ sys.exit('ERROR: unable to overwrite current version')
+
+ else: