Revision: 76622
          http://sourceforge.net/p/brlcad/code/76622
Author:   brlcad
Date:     2020-08-01 04:01:35 +0000 (Sat, 01 Aug 2020)
Log Message:
-----------
bu_process_fd() can return null, must check it

Modified Paths:
--------------
    brlcad/trunk/src/libtclcad/tclcad_obj.c

Modified: brlcad/trunk/src/libtclcad/tclcad_obj.c
===================================================================
--- brlcad/trunk/src/libtclcad/tclcad_obj.c     2020-08-01 03:17:36 UTC (rev 
76621)
+++ brlcad/trunk/src/libtclcad/tclcad_obj.c     2020-08-01 04:01:35 UTC (rev 
76622)
@@ -1153,7 +1153,8 @@
     int *fdp;
     if (!p) return;
     fdp = (int *)bu_process_fd(p, fd);
-    Tcl_CreateFileHandler(*fdp, mode, callback, (ClientData)data);
+    if (fdp)
+       Tcl_CreateFileHandler(*fdp, mode, callback, (ClientData)data);
 }
 
 void
@@ -1162,7 +1163,8 @@
     int *fdp;
     if (!p) return;
     fdp = (int *)bu_process_fd(p, fd);
-    Tcl_DeleteFileHandler(*fdp);
+    if (fdp)
+       Tcl_DeleteFileHandler(*fdp);
     close(*fdp);
 }
 
@@ -1173,8 +1175,10 @@
     HANDLE *fdp;
     if (!chan || !p) return;
     fdp = (HANDLE *)bu_process_fd(p, fd);
-    (*chan) = (void *)Tcl_MakeFileChannel(*fdp, mode);
-    Tcl_CreateChannelHandler((Tcl_Channel)(*chan), mode, callback, 
(ClientData)data);
+    if (fdp) {
+       (*chan) = (void *)Tcl_MakeFileChannel(*fdp, mode);
+       Tcl_CreateChannelHandler((Tcl_Channel)(*chan), mode, callback, 
(ClientData)data);
+    }
 }
 
 void

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits

Reply via email to