diff --git a/Tests/test_imagecms.py b/Tests/test_imagecms.py index 66be02078ad..cd539d990ed 100644 --- a/Tests/test_imagecms.py +++ b/Tests/test_imagecms.py @@ -626,6 +626,9 @@ def test_constants_deprecation(): with pytest.warns(DeprecationWarning): assert getattr(ImageCms, prefix + name) == enum[name] +def test_long_modes() -> None: + p = ImageCms.getOpenProfile("Tests/icc/sGrey-v2-nano.icc") + ImageCms.buildTransform(p, p, "ABCDEFGHI", "ABCDEFGHI") @pytest.mark.parametrize("mode", ("RGB", "RGBA", "RGBX")) def test_rgb_lab(mode): diff --git a/src/_imagingcms.c b/src/_imagingcms.c index ddfe6ad6486..a10c336feb8 100644 --- a/src/_imagingcms.c +++ b/src/_imagingcms.c @@ -201,8 +201,8 @@ cms_transform_new(cmsHTRANSFORM transform, char *mode_in, char *mode_out) { self->transform = transform; - strcpy(self->mode_in, mode_in); - strcpy(self->mode_out, mode_out); + strncpy(self->mode_in, mode_in, 8); + strncpy(self->mode_out, mode_out, 8); return (PyObject *)self; }