]> git.phdru.name Git - bookmarks_db.git/blobdiff - Robots/bkmk_rforking.py
Fixed comment.
[bookmarks_db.git] / Robots / bkmk_rforking.py
index c04026e2cc6c48ce4c55425dbc585333906ae667..a583e6e46657d95bb7cd2bebddc1f91c44b1f831 100644 (file)
@@ -1,21 +1,31 @@
-"""
-   Forking robot
+"""Forking robot
 
-   Written by BroytMann. Copyright (C) 2000-2007 PhiloSoft Design.
+This file is a part of Bookmarks database and Internet robot.
 """
 
+__version__ = "$Revision$"[11:-2]
+__revision__ = "$Id$"[5:-2]
+__date__ = "$Date$"[7:-2]
+__author__ = "Oleg Broytman <phd@phdru.name>"
+__copyright__ = "Copyright (C) 2000-2011 PhiloSoft Design"
+__license__ = "GNU GPL"
+
+__all__ = ['robot_forking']
+
+
+import sys, os
 
 try:
-   import cPickle
-   pickle = cPickle
+   import cPickle as pickle
 except ImportError:
    import pickle
 
-import sys, os
 from subproc import Subprocess, RecordFile
+from bkmk_objects import Robot
+
 
 # This is to catch 'close failed: [Errno 9] Bad file descriptor' message
-# from os.close() in Subprocess.die() and errors from from the subprocess.
+# from os.close() in Subprocess.die() and errors from the subprocess.
 sys.stderr = open("err.log", 'a')
 
 check_subp = None
@@ -37,8 +47,6 @@ def restart_subp(log):
    subp_pipe = RecordFile(check_subp)
 
 
-from bkmk_objects import Robot
-
 class robot_forking(Robot):
    def check_url(self, bookmark):
       if not check_subp:
@@ -47,15 +55,14 @@ class robot_forking(Robot):
       try:
          save_parent = bookmark.parent
          bookmark.parent = None
-
-         bookmark.tempfname = self.tempfname
          subp_pipe.write_record(pickle.dumps(bookmark))
 
-         if check_subp.waitForPendingChar(900): # wait 15 minutes
+         if check_subp.waitForPendingChar(60): # wait a minute
             new_b = pickle.loads(subp_pipe.read_record())
             for attr in ("error", "no_error",
                   "moved", "size", "md5", "real_title",
-                  "last_tested", "last_modified", "test_time", "icon"):
+                  "last_tested", "last_modified", "test_time",
+                  "icon", "icon_href"):
                if hasattr(new_b, attr):
                   setattr(bookmark, attr, getattr(new_b, attr))
          else:
@@ -77,6 +84,5 @@ class robot_forking(Robot):
       # Tested
       return 1
 
-
    def stop(self):
       stop_subp(None) # Stop subprocess; do not log restarting