{"record":{"id":"f34112f144e317a5","repo":"DrKLO/Telegram","slug":"s-sorry-progressive-output-was-not-compiled-in","errorCode":null,"errorMessage":"%s: sorry, progressive output was not compiled in\n","messagePattern":"(.+?): sorry, progressive output was not compiled in\n","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"TMessagesProj/jni/mozjpeg/cjpeg.c","lineNumber":433,"sourceCode":"              progname);\n      exit(EXIT_FAILURE);\n#endif\n\n    } else if (keymatch(arg, \"outfile\", 4)) {\n      /* Set output file name. */\n      if (++argn >= argc) {      /* advance to next argument */\n        fprintf(stderr, \"%s: missing argument for outfile\\n\", progname);\n        usage();\n      }\n      outfilename = argv[argn]; /* save it away for later use */\n\n    } else if (keymatch(arg, \"progressive\", 1)) {\n      /* Select simple progressive mode. */\n#ifdef C_PROGRESSIVE_SUPPORTED\n      simple_progressive = TRUE;\n      /* We must postpone execution until num_components is known. */\n#else\n      fprintf(stderr, \"%s: sorry, progressive output was not compiled in\\n\",\n              progname);\n      exit(EXIT_FAILURE);\n#endif\n\n    } else if (keymatch(arg, \"memdst\", 2)) {\n      /* Use in-memory destination manager */\n#if JPEG_LIB_VERSION >= 80 || defined(MEM_SRCDST_SUPPORTED)\n      memdst = TRUE;\n#else\n      fprintf(stderr, \"%s: sorry, in-memory destination manager was not compiled in\\n\",\n              progname);\n      exit(EXIT_FAILURE);\n#endif\n\n    } else if (keymatch(arg, \"quality\", 1)) {\n      /* Quality ratings (quantization table scaling factors). */\n      if (++argn >= argc) {      /* advance to next argument */\n        fprintf(stderr, \"%s: missing argument for quality\\n\", progname);","sourceCodeStart":415,"sourceCodeEnd":451,"githubUrl":"https://github.com/DrKLO/Telegram/blob/45ab8f4308496e1f01026a97fcdb0d58a5274474/TMessagesProj/jni/mozjpeg/cjpeg.c#L415-L451","documentation":"cjpeg was built without progressive-output support (C_PROGRESSIVE_SUPPORTED undefined). The -progressive switch (which enables progressive/multi-scan JPEG output) is therefore unavailable; cjpeg prints this message and exits with EXIT_FAILURE. Progressive support is a compile-time option; baseline-only builds lack it.","triggerScenarios":"Invoking `cjpeg -progressive ...` against a mozjpeg/libjpeg build compiled without C_PROGRESSIVE_SUPPORTED.","commonSituations":"A baseline-only libjpeg build for embedded use; CI using a stripped mozjpeg; scripts assuming progressive is always available.","solutions":["Drop -progressive to emit a baseline (single-scan) JPEG.","Rebuild libjpeg/mozjpeg with C_PROGRESSIVE_SUPPORTED (and C_MULTISCAN_FILES_SUPPORTED) defined if progressive output is required."],"exampleFix":"# before\ncjpeg -progressive -quality 80 in.ppm > out.jpg\n\n# after\ncjpeg -quality 80 in.ppm > out.jpg","handlingStrategy":"fallback","validationCode":"# Probe progressive support before using -progressive.\nif cjpeg -h 2>&1 | grep -q progressive; then\n  PROG=-progressive\nelse\n  PROG=   # fall back to baseline\nfi\ncjpeg $PROG -quality 80 in.ppm > out.jpg","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Treat progressive output as an optional, compile-time feature.","Rebuild with C_PROGRESSIVE_SUPPORTED if progressive JPEG is required."],"tags":["mozjpeg","cjpeg","cli","compile-flag","jpeg"],"backgroundTag":null,"analyzedSha":"45ab8f4308496e1f01026a97fcdb0d58a5274474","analyzedAt":"2026-08-14T05:19:30.815Z","schemaVersion":2},"datasetVersion":"2026-08-14T10:17:34.591Z"}