diff options
author | dgp <dgp@users.sourceforge.net> | 2012-03-07 21:03:06 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2012-03-07 21:03:06 (GMT) |
commit | b4c5e66dda9c9ccea2ba0874730108618c7a49a2 (patch) | |
tree | b61a6aa6f6d60e96eb96c773f28c9677f3eb6029 | |
parent | 049be8908f899a68f88ba8e2d1bdea7c6d0d64dc (diff) | |
parent | ef521914f66d6d6f13f5f82e630994ec04bcc004 (diff) | |
download | tcl-b4c5e66dda9c9ccea2ba0874730108618c7a49a2.zip tcl-b4c5e66dda9c9ccea2ba0874730108618c7a49a2.tar.gz tcl-b4c5e66dda9c9ccea2ba0874730108618c7a49a2.tar.bz2 |
merge 8.5 to bugfix
-rw-r--r-- | ChangeLog | 12 | ||||
-rw-r--r-- | generic/tclTest.c | 4 | ||||
-rw-r--r-- | library/http/http.tcl | 6 | ||||
-rw-r--r-- | library/http/pkgIndex.tcl | 2 | ||||
-rw-r--r-- | tests/http.test | 12 | ||||
-rw-r--r-- | unix/Makefile.in | 4 | ||||
-rw-r--r-- | win/Makefile.in | 4 | ||||
-rw-r--r-- | win/tclWinPort.h | 6 |
8 files changed, 34 insertions, 16 deletions
@@ -1,3 +1,15 @@ +2012-03-07 Andreas Kupries <andreask@activestate.com> + + * library/http/http.tcl: [Bug 3498327]: Generate upper-case + * library/http/pkgIndex.tcl: hexadecimal output for compliance + * tests/http.test: with RFC 3986. Bumped version to 2.7.9. + * unix/Makefile.in: + * win/Makefile.in: + +2012-03-06 Jan Nijtmans <nijtmans@users.sf.net> + + * win/tclWinPort.h: Compatibility with older Visual Studio versions. + 2012-03-04 Jan Nijtmans <nijtmans@users.sf.net> * generic/tclLoad.c: Patch from the cygwin folks diff --git a/generic/tclTest.c b/generic/tclTest.c index cb0faad..c08f281 100644 --- a/generic/tclTest.c +++ b/generic/tclTest.c @@ -5349,7 +5349,7 @@ TestmainthreadCmd( const char **argv) /* Argument strings. */ { if (argc == 1) { - Tcl_Obj *idObj = Tcl_NewLongObj((long)(intptr_t)Tcl_GetCurrentThread()); + Tcl_Obj *idObj = Tcl_NewLongObj((long)(size_t)Tcl_GetCurrentThread()); Tcl_SetObjResult(interp, idObj); return TCL_OK; } else { @@ -6048,7 +6048,7 @@ TestChannelCmd( return TCL_ERROR; } - TclFormatInt(buf, (long)(intptr_t)Tcl_GetChannelThread(chan)); + TclFormatInt(buf, (long)(size_t)Tcl_GetChannelThread(chan)); Tcl_AppendResult(interp, buf, NULL); return TCL_OK; } diff --git a/library/http/http.tcl b/library/http/http.tcl index f8ea55f..ce9f634 100644 --- a/library/http/http.tcl +++ b/library/http/http.tcl @@ -11,7 +11,7 @@ package require Tcl 8.4 # Keep this in sync with pkgIndex.tcl and with the install directories in # Makefiles -package provide http 2.7.8 +package provide http 2.7.9 namespace eval http { # Allow resourcing to not clobber existing data @@ -37,11 +37,11 @@ namespace eval http { for {set i 0} {$i <= 256} {incr i} { set c [format %c $i] if {![string match {[-._~a-zA-Z0-9]} $c]} { - set map($c) %[format %.2x $i] + set map($c) %[format %.2X $i] } } # These are handled specially - set map(\n) %0d%0a + set map(\n) %0D%0A variable formMap [array get map] # Create a map for HTTP/1.1 open sockets diff --git a/library/http/pkgIndex.tcl b/library/http/pkgIndex.tcl index 43b5571..815ac12 100644 --- a/library/http/pkgIndex.tcl +++ b/library/http/pkgIndex.tcl @@ -1,4 +1,4 @@ # Tcl package index file, version 1.1 if {![package vsatisfies [package provide Tcl] 8.4]} {return} -package ifneeded http 2.7.8 [list tclPkgSetup $dir http 2.7.8 {{http.tcl source {::http::config ::http::formatQuery ::http::geturl ::http::reset ::http::wait ::http::register ::http::unregister ::http::mapReply}}}] +package ifneeded http 2.7.9 [list tclPkgSetup $dir http 2.7.9 {{http.tcl source {::http::config ::http::formatQuery ::http::geturl ::http::reset ::http::wait ::http::register ::http::unregister ::http::mapReply}}}] diff --git a/tests/http.test b/tests/http.test index 6dcb612..3a9d4ba 100644 --- a/tests/http.test +++ b/tests/http.test @@ -483,17 +483,17 @@ test http-5.1 {http::formatQuery} { # test http-5.2 obsoleted by 5.4 and 5.5 with http 2.5 test http-5.3 {http::formatQuery} { http::formatQuery lines "line1\nline2\nline3" -} {lines=line1%0d%0aline2%0d%0aline3} +} {lines=line1%0D%0Aline2%0D%0Aline3} test http-5.4 {http::formatQuery} { http::formatQuery name1 ~bwelch name2 \xa1\xa2\xa2 -} {name1=~bwelch&name2=%c2%a1%c2%a2%c2%a2} +} {name1=~bwelch&name2=%C2%A1%C2%A2%C2%A2} test http-5.5 {http::formatQuery} { set enc [http::config -urlencoding] http::config -urlencoding iso8859-1 set res [http::formatQuery name1 ~bwelch name2 \xa1\xa2\xa2] http::config -urlencoding $enc set res -} {name1=~bwelch&name2=%a1%a2%a2} +} {name1=~bwelch&name2=%A1%A2%A2} test http-6.1 {http::ProxyRequired} { http::config -proxyhost [info hostname] -proxyport $port @@ -509,12 +509,12 @@ test http-6.1 {http::ProxyRequired} { test http-7.1 {http::mapReply} { http::mapReply "abc\$\[\]\"\\()\}\{" -} {abc%24%5b%5d%22%5c%28%29%7d%7b} +} {abc%24%5B%5D%22%5C%28%29%7D%7B} test http-7.2 {http::mapReply} { # RFC 2718 specifies that we pass urlencoding on utf-8 chars by default, # so make sure this gets converted to utf-8 then urlencoded. http::mapReply "\u2208" -} {%e2%88%88} +} {%E2%88%88} test http-7.3 {http::formatQuery} { set enc [http::config -urlencoding] # this would be reverting to http <=2.4 behavior @@ -531,7 +531,7 @@ test http-7.4 {http::formatQuery} { set res [http::mapReply "\u2208"] http::config -urlencoding $enc set res -} {%3f} +} {%3F} # cleanup catch {unset url} diff --git a/unix/Makefile.in b/unix/Makefile.in index 0b6a114..382a41b 100644 --- a/unix/Makefile.in +++ b/unix/Makefile.in @@ -773,8 +773,8 @@ install-libraries: libraries $(INSTALL_TZDATA) install-msgs do \ $(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)"/http1.0; \ done; - @echo "Installing package http 2.7.8 as a Tcl Module"; - @$(INSTALL_DATA) $(TOP_DIR)/library/http/http.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.4/http-2.7.8.tm; + @echo "Installing package http 2.7.9 as a Tcl Module"; + @$(INSTALL_DATA) $(TOP_DIR)/library/http/http.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.4/http-2.7.9.tm; @echo "Installing library opt0.4 directory"; @for i in $(TOP_DIR)/library/opt/*.tcl ; \ do \ diff --git a/win/Makefile.in b/win/Makefile.in index b3df47f..d3c9c80 100644 --- a/win/Makefile.in +++ b/win/Makefile.in @@ -637,8 +637,8 @@ install-libraries: libraries install-tzdata install-msgs do \ $(COPY) "$$j" "$(SCRIPT_INSTALL_DIR)/http1.0"; \ done; - @echo "Installing package http 2.7.8 as a Tcl Module"; - @$(COPY) $(ROOT_DIR)/library/http/http.tcl $(SCRIPT_INSTALL_DIR)/../tcl8/8.4/http-2.7.8.tm; + @echo "Installing package http 2.7.9 as a Tcl Module"; + @$(COPY) $(ROOT_DIR)/library/http/http.tcl $(SCRIPT_INSTALL_DIR)/../tcl8/8.4/http-2.7.9.tm; @echo "Installing library opt0.4 directory"; @for j in $(ROOT_DIR)/library/opt/*.tcl; \ do \ diff --git a/win/tclWinPort.h b/win/tclWinPort.h index ee29a1a..4855d12 100644 --- a/win/tclWinPort.h +++ b/win/tclWinPort.h @@ -23,6 +23,12 @@ #include <windows.h> #undef WIN32_LEAN_AND_MEAN +/* Compatibility to older visual studio / windows platform SDK */ +#if !defined(MAXULONG_PTR) +typedef DWORD DWORD_PTR; +typedef DWORD_PTR * PDWORD_PTR; +#endif + /* * Ask for the winsock function typedefs, also. */ |