Update.
[ir-tcl-moved-to-github.git] / ir-tcl.c
index fc95e30..0784461 100644 (file)
--- a/ir-tcl.c
+++ b/ir-tcl.c
@@ -5,7 +5,16 @@
  * Sebastian Hammer, Adam Dickmeiss
  *
  * $Log: ir-tcl.c,v $
- * Revision 1.107  1998-06-10 13:00:46  adam
+ * Revision 1.110  1998-10-20 15:15:31  adam
+ * Changed scan response handler.
+ *
+ * Revision 1.109  1998/10/13 21:23:26  adam
+ * Fixed searchStatus method.
+ *
+ * Revision 1.108  1998/10/12 11:48:08  adam
+ * Removed printf call.
+ *
+ * Revision 1.107  1998/06/10 13:00:46  adam
  * Added ir-version command.
  *
  * Revision 1.106  1998/05/20 12:25:35  adam
@@ -3338,7 +3347,6 @@ static int do_scanLine (void *obj, Tcl_Interp *interp, int argc, char **argv)
                           " position\"", NULL);
         return TCL_ERROR;
     }
-    printf ("argv[2]=%s\n", argv[2]);
     if (Tcl_GetInt (interp, argv[2], &i) == TCL_ERROR)
         return TCL_ERROR;
     if (!p->entries_flag || !p->entries || i >= p->num_entries || i < 0)
@@ -3769,11 +3777,13 @@ static void ir_searchResponse (void *o, Z_SearchResponse *searchrs,
         logf (LOG_DEBUG, "Search response, no object!");
         return;
     }
-    setobj->searchStatus = searchrs->searchStatus ? 1 : 0;
+    setobj->searchStatus = *searchrs->searchStatus;
     get_referenceId (&setobj->set_inher.referenceId, searchrs->referenceId);
     setobj->resultCount = *searchrs->resultCount;
     if (searchrs->presentStatus)
         setobj->presentStatus = *searchrs->presentStatus;
+    else
+        setobj->presentStatus = Z_RES_NONE;
     if (searchrs->nextResultSetPosition)
         setobj->nextResultSetPosition = *searchrs->nextResultSetPosition;
 
@@ -3862,7 +3872,6 @@ static void ir_scanResponse (void *o, Z_ScanResponse *scanrs,
         Z_Entry **ze;
 
         scanobj->entries_flag = 1;
-#ifdef ASN_COMPILED
        if (scanrs->entries)
        {
             scanobj->num_entries = scanrs->entries->num_entries;
@@ -3870,15 +3879,6 @@ static void ir_scanResponse (void *o, Z_ScanResponse *scanrs,
                                              sizeof(*scanobj->entries));
            ze = scanrs->entries->entries;
        }
-#else
-       if (scanrs->entries->which == Z_ListEntries_entries)
-       {
-            scanobj->num_entries = scanrs->entries->u.entries->num_entries;
-            scanobj->entries = ir_tcl_malloc (scanobj->num_entries * 
-                                             sizeof(*scanobj->entries));
-           ze = scanrs->entries->u.entries->entries;
-       }
-#endif
        for (i=0; i<scanobj->num_entries; i++, ze++)
        {
            scanobj->entries[i].which = (*ze)->which;
@@ -3910,21 +3910,11 @@ static void ir_scanResponse (void *o, Z_ScanResponse *scanrs,
                break;
            }
        }
-#ifdef ASN_COMPILED
        if (scanrs->entries->nonsurrogateDiagnostics)
            ir_handleDiags (&scanobj->nonSurrogateDiagnosticList,
                             &scanobj->nonSurrogateDiagnosticNum,
                             scanrs->entries->nonsurrogateDiagnostics,
                             scanrs->entries->num_nonsurrogateDiagnostics);
-#else
-       if (scanrs->entries->which == Z_ListEntries_nonSurrogateDiagnostics)
-            ir_handleDiags (&scanobj->nonSurrogateDiagnosticList,
-                            &scanobj->nonSurrogateDiagnosticNum,
-                            scanrs->entries->u.nonSurrogateDiagnostics->
-                            diagRecs,
-                            scanrs->entries->u.nonSurrogateDiagnostics->
-                            num_diagRecs);
-#endif
     }
 }