summaryrefslogtreecommitdiffstats
path: root/generic/tclIORChan.c
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2023-10-11 09:45:45 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2023-10-11 09:45:45 (GMT)
commit76c89fce6cae52d0fbdbba1ff0c412f73e7985e9 (patch)
tree42d3c2474078cdab8f39c4925c5b0237ab81b66e /generic/tclIORChan.c
parenta74d73bc13dd4961d02d3974912000145bff5d1a (diff)
parenta64802e7ede7f1794273c96ae87b61920c268964 (diff)
downloadtcl-76c89fce6cae52d0fbdbba1ff0c412f73e7985e9.zip
tcl-76c89fce6cae52d0fbdbba1ff0c412f73e7985e9.tar.gz
tcl-76c89fce6cae52d0fbdbba1ff0c412f73e7985e9.tar.bz2
Fix [8ab8a138c9]: Functions passed to Tcl_EventuallyFree() must be declared/defined as Tcl_FreeProc
Diffstat (limited to 'generic/tclIORChan.c')
-rw-r--r--generic/tclIORChan.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/generic/tclIORChan.c b/generic/tclIORChan.c
index 3eca3f8..69a8e11 100644
--- a/generic/tclIORChan.c
+++ b/generic/tclIORChan.c
@@ -430,7 +430,7 @@ static Tcl_Obj * DecodeEventMask(int mask);
static ReflectedChannel * NewReflectedChannel(Tcl_Interp *interp,
Tcl_Obj *cmdpfxObj, int mode, Tcl_Obj *handleObj);
static Tcl_Obj * NextHandle(void);
-static void FreeReflectedChannel(ReflectedChannel *rcPtr);
+static Tcl_FreeProc FreeReflectedChannel;
static int InvokeTclMethod(ReflectedChannel *rcPtr,
MethodName method, Tcl_Obj *argOneObj,
Tcl_Obj *argTwoObj, Tcl_Obj **resultObjPtr);
@@ -1170,7 +1170,7 @@ ReflectClose(
ckfree((char *)tctPtr);
((Channel *)rcPtr->chan)->typePtr = NULL;
}
- Tcl_EventuallyFree(rcPtr, (Tcl_FreeProc *) FreeReflectedChannel);
+ Tcl_EventuallyFree(rcPtr, FreeReflectedChannel);
return EOK;
}
@@ -1239,7 +1239,7 @@ ReflectClose(
ckfree((char *)tctPtr);
((Channel *)rcPtr->chan)->typePtr = NULL;
}
- Tcl_EventuallyFree(rcPtr, (Tcl_FreeProc *) FreeReflectedChannel);
+ Tcl_EventuallyFree(rcPtr, FreeReflectedChannel);
return (result == TCL_OK) ? EOK : EINVAL;
}
@@ -2210,8 +2210,9 @@ NextHandle(void)
static void
FreeReflectedChannel(
- ReflectedChannel *rcPtr)
+ char *blockPtr)
{
+ ReflectedChannel *rcPtr = (ReflectedChannel *) blockPtr;
Channel *chanPtr = (Channel *) rcPtr->chan;
TclChannelRelease((Tcl_Channel)chanPtr);