diff --git a/graphics/libfpx/files/patch-warnings b/graphics/libfpx/files/patch-warnings index 30a022bd5b09..58fa951cc605 100644 --- a/graphics/libfpx/files/patch-warnings +++ b/graphics/libfpx/files/patch-warnings @@ -1,30 +1,82 @@ Shift indentation to avoid the "misleading indentation" warning from LLVM10. I admit, that the original author's intent escapes me here, so I cannot tell, if we have an actual bug remaining in this code. --- fpx/ptil_fpx.cpp 2013-09-02 11:45:00.000000000 -0400 +++ fpx/ptil_fpx.cpp 2020-03-17 18:11:00.425447000 -0400 @@ -1200,7 +1200,7 @@ pixelsSpace = tmpPixelSpace; } - imageParam->GetContrast( &contrastValue); - Contrast( contrastValue, pixelsSpace, pixels, width * height); - } + imageParam->GetContrast( &contrastValue); + Contrast( contrastValue, pixelsSpace, pixels, width * height); + } } The variable No_JPEG_Header_Flag is unused. But its mere presence may cause a "duplicate symbol" error from linker, when it tries to link together object files compiled after #include-ing the ejpeg.h header. --- jpeg/ejpeg.h 2013-09-02 11:45:00.000000000 -0400 +++ jpeg/ejpeg.h 2020-09-07 10:50:07.600375000 -0400 @@ -31,5 +31,2 @@ #define IMG_FORMAT_1111 0x04 /* Four-component non-interleaved image */ #define IMG_FORMAT_411 0x05 /* Three-component 4:1:1 image */ - -JPEGEXPORT -int No_JPEG_Header_Flag; + +padP and padWid are not used. That they are being assigned a value +-- multiple times -- is why earlier compilers didn't warn about it. +But modern clang raises a "set but not used" warning... +--- fpx/filter.cpp 2013-09-02 11:45:00.000000000 -0400 ++++ fpx/filter.cpp 2023-07-01 23:41:19.701483000 -0400 +@@ -354,10 +354,8 @@ + goto RETURN; + +- unsigned char *padP, *tmpP, *dstP; +- long x, y, +- padWid = (width + (2 * pad)); // Width of padded line in Pixels ++ unsigned char *tmpP, *dstP; ++ long x, y; + + for (y = 0; y < height; y++) { +- padP = srcComp[k] +(((y + pad) * padWid) * sizeof( Pixel)) + (pad * sizeof( Pixel)); + tmpP = tempcomp[k] + ((y * width) * sizeof( Pixel)); + dstP = dstComp[k] + ((y * width) * sizeof( Pixel)); +@@ -367,5 +365,4 @@ + sum = pixVal + (long)(beta*(double)(pixVal - (long)*dstP) + 0.5); + *dstP = (unsigned char)CLAMP(sum, 0, 255); +- padP += sizeof( Pixel); + tmpP += sizeof( Pixel); + dstP += sizeof( Pixel); + +More set, but unused variables: +--- ri_image/pr_level.cpp 2013-09-02 11:45:00.000000000 -0400 ++++ ri_image/pr_level.cpp 2023-07-01 23:48:29.094528000 -0400 +@@ -1518,5 +1518,4 @@ + // Declare and init some variables before the main loop... + int heightOfBuffer, widthOfBuffer; // Width and height to be written for each bloc +- int yBloc = 0; // Top coordinate in the resolution level + int topInBuffer = 0; // Top coordinate in the buffer + PTile* tile = tiles; // Pointer to the current bloc of the resolution level +@@ -1525,5 +1524,4 @@ + for (short hBloc = 0; hBloc < nbTilesH; ++hBloc) { + +- int xBloc = 0; // Left coordinate in the resolution level + int leftInBuffer = 0; // Left coordinate in the buffer + +@@ -1607,10 +1605,8 @@ + } + +- xBloc += tile->width; // Increment left coordinate in the resolution level + leftInBuffer += widthOfBuffer; // Increment left coordinate in the buffer + ++tile; // Next tile + } + +- yBloc += tile->height; // Increment top coordinate in the resolution level + topInBuffer += heightOfBuffer; // Increment top coordinate in the buffer + }