Tcl Library Source Code

Check-in [fc756af785]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment: (Events): Ticket [864a0c83e3]. Do not suppress readable events at end of the channel. Needed to signal the eof condition. Like for regular files, always readable. Affected channels memchan, string, and variable. Versions bumped to 1.0.3, 1.0.2, and 1.0.3 respectively.
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: fc756af7855c811d2816d8753450ecf7a718e3c6
User & Date: andreask 2013-11-22 18:17:41
Context
2013-11-22
19:23
Merging Mime Modifications. check-in: c2829102b5 user: andreask tags: trunk
18:17
(Events): Ticket [864a0c83e3]. Do not suppress readable events at end of the channel. Needed to signal the eof condition. Like for regular files, always readable. Affected channels memchan, string, and variable. Versions bumped to 1.0.3, 1.0.2, and 1.0.3 respectively. check-in: fc756af785 user: andreask tags: trunk
17:39
Revert Tcl 8.5 dependency introduced by an unlogged rewrite [c80b6fffde]. check-in: 941966a233 user: andreask tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to modules/virtchannel_base/ChangeLog.









1
2
3
4
5
6
7








2013-04-03  Andreas Kupries  <[email protected]>

	* tclib_fifo2.man: Renamed more manpages, clashing with the
	* tclib_fifo.man: Memchan package. List are the new names,
	* tclib_memchan.man: with prefix "tcllib_".
	* tclib_null.man:
	* tclib_random.man:
>
>
>
>
>
>
>
>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2013-11-22  Andreas Kupries  <[email protected]>

	* memchan.tcl (Events): Ticket [864a0c83e3]. Do not suppress
	* string.tcl: readable events at end of the channel. Needed
	* variable.tcl: to signal the eof condition. Like for regular
	  files, always readable. Versions bumped to 1.0.3, 1.0.2, and
	  1.0.3 respectively

2013-04-03  Andreas Kupries  <[email protected]>

	* tclib_fifo2.man: Renamed more manpages, clashing with the
	* tclib_fifo.man: Memchan package. List are the new names,
	* tclib_memchan.man: with prefix "tcllib_".
	* tclib_null.man:
	* tclib_random.man:

Changes to modules/virtchannel_base/memchan.tcl.

150
151
152
153
154
155
156
157
158
159


160
161
162
163
164
165
166
167
	set at $newloc

	my Events
	return $at
    }

    method Events {} {
	if {$at >= [string length $content]} {
	    my disallow read
	} else {


	    my allow read
	}
    }
}

# # ## ### ##### ######## #############
package provide tcl::chan::memchan 1.0.2
return







|
|
|
>
>
|
<




|

150
151
152
153
154
155
156
157
158
159
160
161
162

163
164
165
166
167
168
	set at $newloc

	my Events
	return $at
    }

    method Events {} {
	# Always readable -- Even if the seek location is at the end
	# (or beyond).  In that case the readable events are fired
	# endlessly until the eof indicated by the seek location is
	# properly processed by the event handler. Like for regular
	# files -- Ticket [864a0c83e3].
	my allow read

    }
}

# # ## ### ##### ######## #############
package provide tcl::chan::memchan 1.0.3
return

Changes to modules/virtchannel_base/pkgIndex.tcl.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
if {![package vsatisfies [package provide Tcl] 8.5]} {return}

package ifneeded tcl::chan::cat 1.0.2      [list source [file join $dir cat.tcl]]
package ifneeded tcl::chan::facade 1.0.1   [list source [file join $dir facade.tcl]]
package ifneeded tcl::chan::fifo 1         [list source [file join $dir fifo.tcl]]
package ifneeded tcl::chan::fifo2 1        [list source [file join $dir fifo2.tcl]]
package ifneeded tcl::chan::halfpipe 1     [list source [file join $dir halfpipe.tcl]]
package ifneeded tcl::chan::memchan 1.0.2  [list source [file join $dir memchan.tcl]]
package ifneeded tcl::chan::null 1         [list source [file join $dir null.tcl]]
package ifneeded tcl::chan::nullzero 1     [list source [file join $dir nullzero.tcl]]
package ifneeded tcl::chan::random 1       [list source [file join $dir random.tcl]]
package ifneeded tcl::chan::std 1.0.1      [list source [file join $dir std.tcl]]
package ifneeded tcl::chan::string 1.0.1   [list source [file join $dir string.tcl]]
package ifneeded tcl::chan::textwindow 1   [list source [file join $dir textwindow.tcl]]
package ifneeded tcl::chan::variable 1.0.2 [list source [file join $dir variable.tcl]]
package ifneeded tcl::chan::zero 1         [list source [file join $dir zero.tcl]]
package ifneeded tcl::randomseed 1         [list source [file join $dir randseed.tcl]]







|




|

|


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
if {![package vsatisfies [package provide Tcl] 8.5]} {return}

package ifneeded tcl::chan::cat 1.0.2      [list source [file join $dir cat.tcl]]
package ifneeded tcl::chan::facade 1.0.1   [list source [file join $dir facade.tcl]]
package ifneeded tcl::chan::fifo 1         [list source [file join $dir fifo.tcl]]
package ifneeded tcl::chan::fifo2 1        [list source [file join $dir fifo2.tcl]]
package ifneeded tcl::chan::halfpipe 1     [list source [file join $dir halfpipe.tcl]]
package ifneeded tcl::chan::memchan 1.0.3  [list source [file join $dir memchan.tcl]]
package ifneeded tcl::chan::null 1         [list source [file join $dir null.tcl]]
package ifneeded tcl::chan::nullzero 1     [list source [file join $dir nullzero.tcl]]
package ifneeded tcl::chan::random 1       [list source [file join $dir random.tcl]]
package ifneeded tcl::chan::std 1.0.1      [list source [file join $dir std.tcl]]
package ifneeded tcl::chan::string 1.0.2   [list source [file join $dir string.tcl]]
package ifneeded tcl::chan::textwindow 1   [list source [file join $dir textwindow.tcl]]
package ifneeded tcl::chan::variable 1.0.3 [list source [file join $dir variable.tcl]]
package ifneeded tcl::chan::zero 1         [list source [file join $dir zero.tcl]]
package ifneeded tcl::randomseed 1         [list source [file join $dir randseed.tcl]]

Changes to modules/virtchannel_base/string.tcl.

106
107
108
109
110
111
112
113
114
115


116
117
118
119
120
121
122
123
	set at $newloc

	my Events
	return $at
    }

    method Events {} {
	if {$at >= [string length $content]} {
	    my disallow read
	} else {


	    my allow read
	}
    }
}

# # ## ### ##### ######## #############
package provide tcl::chan::string 1.0.1
return







|
|
|
>
>
|
<




|

106
107
108
109
110
111
112
113
114
115
116
117
118

119
120
121
122
123
124
	set at $newloc

	my Events
	return $at
    }

    method Events {} {
	# Always readable -- Even if the seek location is at the end
	# (or beyond).  In that case the readable events are fired
	# endlessly until the eof indicated by the seek location is
	# properly processed by the event handler. Like for regular
	# files -- Ticket [864a0c83e3].
	my allow read

    }
}

# # ## ### ##### ######## #############
package provide tcl::chan::string 1.0.2
return

Changes to modules/virtchannel_base/variable.tcl.

163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
	set at $newloc

	my Events
	return $at
    }

    method Events {} {
	upvar #0 $varname content

	if {$at >= [string length $content]} {
	    my disallow read
	} else {
	    my allow read
	}
    }
}

# # ## ### ##### ######## #############
package provide tcl::chan::variable 1.0.2
return







|
|
|
|
|
|
<




|

163
164
165
166
167
168
169
170
171
172
173
174
175

176
177
178
179
180
181
	set at $newloc

	my Events
	return $at
    }

    method Events {} {
	# Always readable -- Even if the seek location is at the end
	# (or beyond).  In that case the readable events are fired
	# endlessly until the eof indicated by the seek location is
	# properly processed by the event handler. Like for regular
	# files -- Ticket [864a0c83e3].
	my allow read

    }
}

# # ## ### ##### ######## #############
package provide tcl::chan::variable 1.0.3
return