&& (readOrWrite_as_char_star[1] == '\0')) {
&& (readOrWrite_as_char_star[2] == '\0')) {
int MkChannelFromFdCmd(ClientData clientData UNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]){	Tcl_Channel theChannel;	int fd;	int readOrWrite = TCL_READABLE | TCL_WRITABLE;	if ((objc != 2) && (objc != 3)) {		Tcl_WrongNumArgs(interp, 1, objv, "fd [r|w|rw]");		return TCL_ERROR;	}		if (objc == 3) {		char* readOrWrite_as_char_star;		readOrWrite_as_char_star = strdup(Tcl_GetString(objv[2]));		if (readOrWrite_as_char_star == NULL) {			return TCL_ERROR;		}		if ((readOrWrite_as_char_star[0] == 'r')			&& (readOrWrite_as_char_star[1] == '\0')) {			readOrWrite = TCL_READABLE;		} else if ((readOrWrite_as_char_star[0] == 'w')			&& (readOrWrite_as_char_star[1] == '\0')) {			readOrWrite = TCL_WRITABLE;		} else if ((readOrWrite_as_char_star[0] == 'r')			&& (readOrWrite_as_char_star[1] == 'w')			&& (readOrWrite_as_char_star[1] == '\0')) {			readOrWrite = TCL_READABLE | TCL_WRITABLE;		} else {			Tcl_AppendResult(interp, "Bad mode. Use r, w or rw", NULL);			free(readOrWrite_as_char_star);			return TCL_ERROR;		}		free(readOrWrite_as_char_star);	}	{		char* fd_as_char_star;		fd_as_char_star = strdup(Tcl_GetString(objv[1]));		if (fd_as_char_star == NULL) {			return TCL_ERROR;		}		if (Tcl_GetInt(interp, fd_as_char_star, &fd) != TCL_OK) {			free(fd_as_char_star);			return TCL_ERROR;		}		free(fd_as_char_star);	}	theChannel = Tcl_MakeFileChannel((ClientData) fd, readOrWrite);	if (theChannel == NULL) {		return TCL_ERROR;	}		/* register the channel in the current interpreter */	Tcl_RegisterChannel(interp, theChannel);	Tcl_AppendResult(interp, Tcl_GetChannelName(theChannel), (char *) NULL);	return TCL_OK;}