Add back 2 patches for histogram and overlayframe that are working correctly and... 2024-02
authorGood Guy <good1.2guy@gmail.com>
Wed, 21 Feb 2024 17:14:40 +0000 (10:14 -0700)
committerGood Guy <good1.2guy@gmail.com>
Wed, 21 Feb 2024 17:14:40 +0000 (10:14 -0700)
cinelerra-5.1/cinelerra/overlayframe.h
cinelerra-5.1/plugins/histogram/histogram.C

index 13c2e4bd0b26b0b5994eea343e02bdd8a4c074be..4775e8df0004c9f5c2c529c37b779b3b31a7be0a 100644 (file)
@@ -32,6 +32,7 @@
 #include <stdint.h>
 #include <stdlib.h>
 #include <unistd.h>
+#include <float.h>
 
 #define DIRECT_COPY 0
 #define BILINEAR 1
@@ -237,7 +238,7 @@ static inline int64_t aclip(int64_t v, int mx) {
        return v < 0 ? 0 : v > mx ? mx : v;
 }
 static inline float   aclip(float v, float mx) {
-       return v < 0 ? 0 : v > mx ? mx : v;
+       return v < -FLT_MAX+1 ? -FLT_MAX : v > FLT_MAX-1 ? FLT_MAX : v;
 }
 static inline float   aclip(float v, int mx) {
        return v < 0 ? 0 : v > mx ? mx : v;
index c78c3c7c44eb3b44c547de8f81059dd7f4ba7b68..4b55f429aaa63a2cb1ae9b78cb7068153c7f8dba 100644 (file)
@@ -234,7 +234,7 @@ float HistogramMain::calculate_level(float input, int mode, int use_value)
 
        if( !EQUIV(config.gamma[mode], 0) ) {
                output = pow(output, 1.0 / config.gamma[mode]);
-               CLAMP(output, 0, 1.0);
+               CLAMP(output, 0, 100.0);
        }
 
 // Apply value curve