diff --git a/tools/tiffcp.c b/tools/tiffcp.c index fd129bb7bea82b3ccb46ea38af608974555806f3..8d944ff6f7aa6d6b378d77304c69931af5348356 100644 --- a/tools/tiffcp.c +++ b/tools/tiffcp.c @@ -274,19 +274,34 @@ main(int argc, char* argv[]) deftilewidth = atoi(optarg); break; case 'B': - *mp++ = 'b'; *mp = '\0'; + if (strlen(mode) < (sizeof(mode) - 1)) + { + *mp++ = 'b'; *mp = '\0'; + } break; case 'L': - *mp++ = 'l'; *mp = '\0'; + if (strlen(mode) < (sizeof(mode) - 1)) + { + *mp++ = 'l'; *mp = '\0'; + } break; case 'M': - *mp++ = 'm'; *mp = '\0'; + if (strlen(mode) < (sizeof(mode) - 1)) + { + *mp++ = 'm'; *mp = '\0'; + } break; case 'C': - *mp++ = 'c'; *mp = '\0'; + if (strlen(mode) < (sizeof(mode) - 1)) + { + *mp++ = 'c'; *mp = '\0'; + } break; case '8': - *mp++ = '8'; *mp = '\0'; + if (strlen(mode) < (sizeof(mode)-1)) + { + *mp++ = '8'; *mp = '\0'; + } break; case 'x': pageInSeq = 1;