Diff for /libwww/Robot/src/HTRobot.c between versions 1.29 and 1.30

version 1.29, 1996/08/05 21:47:57 version 1.30, 1996/08/19 18:31:54
Line 56  typedef struct _Robot { Line 56  typedef struct _Robot {
     HTRequest *         timeout;          /* Until we get a server eventloop */      HTRequest *         timeout;          /* Until we get a server eventloop */
     HTParentAnchor *    anchor;      HTParentAnchor *    anchor;
     int                 depth;                       /* How deep is our tree */      int                 depth;                       /* How deep is our tree */
       int                 cnt;                            /* Count of requests */
     HTList *            hyperdoc;            /* List of our HyperDoc Objects */      HTList *            hyperdoc;            /* List of our HyperDoc Objects */
     HTList *            htext;                  /* List of our HText Objects */      HTList *            htext;                  /* List of our HText Objects */
     struct timeval *    tv;                             /* Timeout on socket */      struct timeval *    tv;                             /* Timeout on socket */
Line 162  PRIVATE Robot * Robot_new (void) Line 163  PRIVATE Robot * Robot_new (void)
     me->tv->tv_sec = DEFAULT_TIMEOUT;      me->tv->tv_sec = DEFAULT_TIMEOUT;
     me->cwd = HTGetCurrentDirectoryURL();      me->cwd = HTGetCurrentDirectoryURL();
     me->output = OUTPUT;      me->output = OUTPUT;
       me->cnt = 1;
   
     /* We keep an extra timeout request object for the timeout_handler */      /* We keep an extra timeout request object for the timeout_handler */
     me->timeout = HTRequest_new();      me->timeout = HTRequest_new();
Line 217  PRIVATE HTRequest * Thread_new (Robot * Line 219  PRIVATE HTRequest * Thread_new (Robot *
     if (mr->flags & MR_PREEMPTIVE) HTRequest_setPreemptive(newreq, YES);      if (mr->flags & MR_PREEMPTIVE) HTRequest_setPreemptive(newreq, YES);
     HTRequest_addRqHd(newreq, HT_C_HOST);      HTRequest_addRqHd(newreq, HT_C_HOST);
     HTRequest_setMethod(newreq, method);      HTRequest_setMethod(newreq, method);
       mr->cnt++;
     return newreq;      return newreq;
 }  }
   
Line 224  PRIVATE BOOL Thread_delete (Robot * mr, Line 227  PRIVATE BOOL Thread_delete (Robot * mr,
 {  {
     if (mr && request) {      if (mr && request) {
         HTRequest_delete(request);          HTRequest_delete(request);
           mr->cnt--;
         return YES;          return YES;
     }      }
     return NO;      return NO;
Line 281  PRIVATE void VersionInfo (void) Line 285  PRIVATE void VersionInfo (void)
 PRIVATE int terminate_handler (HTRequest * request, void * param, int status)   PRIVATE int terminate_handler (HTRequest * request, void * param, int status) 
 {  {
     Robot * mr = (Robot *) HTRequest_context(request);      Robot * mr = (Robot *) HTRequest_context(request);
     if (mr->logfile) HTLog_add(request, status);  
     Thread_delete(mr, request);      Thread_delete(mr, request);
     if (HTNet_isEmpty()) Cleanup(mr, 0);      if (HTNet_isEmpty()) {
           if (SHOW_MSG) HTTrace("Robot....... Everything is finished...\n");
           Cleanup(mr, 0);
       }
       if (SHOW_MSG) HTTrace("Robot....... %d outstanding requests\n", mr->cnt);
     return HT_OK;      return HT_OK;
 }  }
   
Line 355  PUBLIC void HText_beginAnchor (HText * t Line 362  PUBLIC void HText_beginAnchor (HText * t
                 if (SHOW_MSG)                  if (SHOW_MSG)
                     HTTrace("loading at depth %d using HEAD\n", depth);                      HTTrace("loading at depth %d using HEAD\n", depth);
                 HTRequest_setMethod(newreq, METHOD_HEAD);                  HTRequest_setMethod(newreq, METHOD_HEAD);
                 HTRequest_setOutputFormat(newreq, WWW_MIME);                  HTRequest_setOutputFormat(newreq, WWW_DEBUG);
             } else {              } else {
                 if (SHOW_MSG) HTTrace("loading at depth %d\n", depth);                  if (SHOW_MSG) HTTrace("loading at depth %d\n", depth);
             }              }

Removed from v.1.29  
changed lines
  Added in v.1.30


Webmaster