diff options
author | nijtmans@users.sourceforge.net <jan.nijtmans> | 2017-01-11 11:37:21 (GMT) |
---|---|---|
committer | nijtmans@users.sourceforge.net <jan.nijtmans> | 2017-01-11 11:37:21 (GMT) |
commit | 1084096efc08333a282480922a2bb2c58e28fce2 (patch) | |
tree | 68dc8a4d9a6b01fe2552e0189e05f9455cdf9887 | |
parent | b1caabe329c6e8ee762ae50d31c663627feacd94 (diff) | |
parent | 7cc8f691b7c9b5109330a360c9d677ceb60610fa (diff) | |
download | tk-1084096efc08333a282480922a2bb2c58e28fce2.zip tk-1084096efc08333a282480922a2bb2c58e28fce2.tar.gz tk-1084096efc08333a282480922a2bb2c58e28fce2.tar.bz2 |
Fix [d4fb4e80d220e46e588f310291fd7a4205e8cd67|d4fb4e80d2]: Image photo commands read/write/put do not accept "-" as first letter in file names resp. image data
-rw-r--r-- | generic/tkImgPhoto.c | 6 | ||||
-rw-r--r-- | tests/imgPhoto.test | 10 |
2 files changed, 15 insertions, 1 deletions
diff --git a/generic/tkImgPhoto.c b/generic/tkImgPhoto.c index 4ee9f69..1bd0142 100644 --- a/generic/tkImgPhoto.c +++ b/generic/tkImgPhoto.c @@ -1540,7 +1540,11 @@ ParseSubcommandOptions( */ if (!(allowedOptions & bit)) { - goto unknownOrAmbiguousOption; + if (optPtr->name != NULL) { + goto unknownOrAmbiguousOption; + } + optPtr->name = objv[index]; + continue; } /* diff --git a/tests/imgPhoto.test b/tests/imgPhoto.test index db23fea..e93dab4 100644 --- a/tests/imgPhoto.test +++ b/tests/imgPhoto.test @@ -804,6 +804,16 @@ test imgPhoto-4.74 {ImgPhotoCmd procedure: put option error handling} -setup { } -cleanup { image delete photo1 } -returnCodes 1 -result {wrong # args: should be "photo1 put data ?-option value ...?"} +test imgPhoto-4.75 {<photo> read command: filename starting with '-'} -constraints { + hasTeapotPhoto +} -body { + file copy -force $teapotPhotoFile -teapotPhotoFile + image create photo photo1 + photo1 read -teapotPhotoFile +} -cleanup { + image delete photo1 + file delete ./-teapotPhotoFile +} -result {} test imgPhoto-5.1 {ImgPhotoGet/Free procedures, shared instances} -constraints { hasTeapotPhoto |