Fedora Account System
Red Hat Associate
Red Hat Customer
os-autoinst build for Rawhide fails on aarch64, in the OCR test. I looked into this and it appears to be because the Rawhide build of leptonica is somehow broken. I tested in a Rawhide mock env on an aarch64 system. If I run tesseract, it crashes: <mock-chroot> sh-5.3# tesseract bootmenu.test.png test Error in boxaGetBox: index not valid Error in boxaGetBox: index not valid Segmentation fault (core dumped) If I downgrade leptonica to the F43 build - 1.87.0-1.fc43 - leaving tesseract alone, it works fine. So there's clearly some kind of issue in leptonica when built with the Rawhide toolchain (GCC 16, glibc 2.43 etc.) I've filed this upstream: https://github.com/DanBloomberg/leptonica/issues/785 . Filing here so downstream maintainer is aware and I can CC some toolchain folks. I'll attach the backtrace.
Backtrace is pretty short, so I'll just paste it: #0 0x0000fffff791049c in pixaGenerateFont (pixs=pixs@entry=0xaaaaaab0f3f0, fontsize=fontsize@entry=14, pbl0=pbl0@entry=0xaaaaaab0b738, pbl1=pbl1@entry=0xaaaaaab0b73c, pbl2=pbl2@entry=0xaaaaaab0b740) at /usr/src/debug/leptonica-1.87.0-2.fc44.aarch64/src/bmf.c:634 i = 0 j = <optimized out> nrows = <optimized out> nrowchars = <optimized out> nchars = <optimized out> h = <optimized out> yval = 42 width = <optimized out> height = <optimized out> baseline = {42, 65535, 112} tab = 0xaaaaaab0c750 box = 0x0 box1 = 0x0 box2 = 0xfffff73de8b4 <_int_free_chunk+84> boxar = 0xaaaaaab0f0f0 boxac = 0xaaaaaab0f700 boxacs = 0xaaaaaab0f6c0 pix1 = 0x0 pix2 = <optimized out> pixr = 0xaaaaaab0eeb0 pixrc = 0xaaaaaab0ec00 pixc = <optimized out> pixa = <optimized out> n = <optimized out> w = <optimized out> inrow = <optimized out> top = <optimized out> ia = <optimized out> na = 0x0 __func__ = "pixaGenerateFont" #1 0x0000fffff7910978 in pixaGenerateFontFromString (fontsize=14, pbl0=0xaaaaaab0b738, pbl1=0xaaaaaab0b73c, pbl2=0xaaaaaab0b740) at /usr/src/debug/leptonica-1.87.0-2.fc44.aarch64/src/bmf.c:521 data = 0xaaaaaab0d8e0 "H\020P\367\377\377" redsize = 5 nbytes = 3680 pix = 0xaaaaaab0f3f0 pixa = <optimized out> __func__ = <optimized out> #2 0x0000fffff7910bd8 in pixaGenerateFontFromString (fontsize=<optimized out>, pbl0=<optimized out>, pbl1=<optimized out>, pbl2=<optimized out>) at /usr/src/debug/leptonica-1.87.0-2.fc44.aarch64/src/bmf.c:524 data = <optimized out> redsize = <optimized out> nbytes = <optimized out> pix = <optimized out> pixa = <optimized out> __func__ = "pixaGenerateFontFromString" #3 0x0000fffff7910ff4 in bmfCreate (dir=0x0, fontsize=14) at /usr/src/debug/leptonica-1.87.0-2.fc44.aarch64/src/bmf.c:131 bmf = 0xaaaaaab0b720 pixa = <optimized out> __func__ = <optimized out> #4 bmfCreate (dir=0x0, fontsize=14) at /usr/src/debug/leptonica-1.87.0-2.fc44.aarch64/src/bmf.c:118 bmf = <optimized out> pixa = <optimized out> __func__ = "bmfCreate" #5 0x0000fffff7da1388 in tesseract::DebugPixa::DebugPixa (this=0xaaaaaaafa2e8) at /usr/src/debug/tesseract-5.5.2-1.fc44.aarch64/src/ccstruct/debugpixa.h:20 No locals. #6 tesseract::Tesseract::Tesseract (this=<optimized out>, this=<optimized out>) at /usr/src/debug/tesseract-5.5.2-1.fc44.aarch64/src/ccmain/tesseractclass.cpp:471 No locals. #7 0x0000fffff7d1ea68 in tesseract::TessBaseAPI::Init (this=this@entry=0xffffffffefe8, data=0xfffff7f14768 "", data@entry=0x0, data_size=data_size@entry=0, language=language@entry=0xaaaaaaaa7600 "eng", oem=oem@entry=tesseract::OEM_DEFAULT, configs=configs@entry=0xfffffffff360, configs_size=configs_size@entry=0, vars_vec=vars_vec@entry=0xffffffffeea8, vars_values=vars_values@entry=0xffffffffee90, set_only_non_debug_params=set_only_non_debug_params@entry=false, reader=reader@entry=0x0) at /usr/src/debug/tesseract-5.5.2-1.fc44.aarch64/src/api/baseapi.cpp:331 mgr = {data_file_name_ = "", reader_ = 0xfffff7fb6060, is_loaded_ = false, swap_ = false, entries_ = {std::vector of length 2460, capacity 34463096 = {0 '\000', 95 '_', 95 '_', 103 'g', 109 'm', 111 'o', 110 'n', 95 '_', 115 's', 116 't', 97 'a', 114 'r', 116 't', 95 '_', 95 '_', 0 '\000', 95 '_', 73 'I', 84 'T', 77 'M', 95 '_', 100 'd', 101 'e', 114 'r', 101 'e', 103 'g', 105 'i', 115 's', 116 't', 101 'e', 114 'r', 84 'T', 77 'M', 67 'C', 108 'l', 111 'o', 110 'n', 101 'e', 84 'T', 97 'a', 98 'b', 108 'l', 101 'e', 0 '\000', 95 '_', 73 'I', 84 'T', 77 'M', 95 '_', 114 'r', 101 'e', 103 'g', 105 'i', 115 's', 116 't', 101 'e', 114 'r', 84 'T', 77 'M', 67 'C', 108 'l', 111 'o', 110 'n', 101 'e', 84 'T', 97 'a', 98 'b', 108 'l', 101 'e', 0 '\000', 95 '_', 95 '_', 99 'c', 120 'x', 97 'a', 95 '_', 102 'f', 105 'i', 110 'n', 97 'a', 108 'l', 105 'i', 122 'z', 101 'e', 0 '\000', 95 '_', 95 '_', 115 's', 116 't', 97 'a', 99 'c', 107 'k', 95 '_', 99 'c', 104 'h', 107 'k', 95 '_', 103 'g', 117 'u', 97 'a', 114 'r', 100 'd', 0 '\000', 95 '_', 95 '_', 115 's', 116 't', 97 'a', 99 'c', 107 'k', 95 '_', 99 'c', 104 'h', 107 'k', 95 '_', 102 'f', 97 'a', 105 'i', 108 'l', 0 '\000', 95 '_', 95 '_', 109 'm', 101 'e', 109 'm', 109 'm', 111 'o', 118 'v', 101 'e', 95 '_', 99 'c', 104 'h', 107 'k', 0 '\000', 109 'm', 97 'a', 108 'l', 108 'l', 111 'o', 99 'c', 0 '\000', 109 'm', 101 'e', 109 'm', 99 'c', 112 'p', 121 'y', 0 '\000', 109 'm', 101 'e', 109 'm', 115 's', 101 'e', 116 't', 0 '\000', 102 'f', 114 'r', 101 'e', 101 'e', 0 '\000', 109 'm', 101 'e', 109 'm', 109 'm', 111 'o', 118 'v', 101 'e', 0 '\000', 95 '_', 95 '_', 109 'm', 101 'e', 109 'm', 99 'c', 112 'p', 121 'y', 95 '_', 99 'c', 104 'h', 107 'k', 0 '\000', 112 'p', 99 'c', 114 'r', 101 'e', 50 '2', 95 '_', 99 'c', 111 'o', 100 'd', 101 'e', 95 '_', 99 'c', 111 'o', 112 'p', 121 'y', 95 '_', 56 '8', 0 '\000', 112 'p'...}, std::vector of length 0, capacity 0 = {80 'P', 235 '\353', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 48 '0', 136 '\210', 252 '\374', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 0 '\000', 224 '\340', 255 '\377', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 0 '\000', 32 ' ', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 176 '\260', 235 '\353', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 208 '\320', 115 's', 252 '\374', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 0 '\000', 208 '\320', 255 '\377', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 0 '\000', 80 'P', 204 '\314', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 208 '\320', 235 '\353', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 208 '\320', 115 's', 252 '\374', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 0 '\000', 208 '\320', 255 '\377', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 116 't', 228 '\344', 251 '\373', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 22 '\026', 233 '\351', 251 '\373', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 160 '\240', 117 'u', 252 '\374', 247 '\367', 16 '\020', 0 '\000', 0 '\000', 0 '\000', 32 ' ', 16 '\020', 255 '\377', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 128 '\200', 126 '~', 251 '\373', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 48 '0', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 2 '\002', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 237 '\355', 255 '\377', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 152 '\230', 236 '\354', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 148 '\224', 236 '\354', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 144 '\220', 238 '\356', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 192 '\300', 236 '\354', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 132 '\204', 123 '{', 252 '\374', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000'...}, std::vector of length 219088, capacity -281474842257456 = {227 '\343', 31 '\037', 64 '@', 249 '\371', 97 'a', 194 '\302', 48 '0', 145 '\221', 96 '`', 26 '\032', 70 'F', 249 '\371', 226 '\342', 3 '\003', 3 '\003', 170 '\252', 31 '\037', 0 '\000', 3 '\003', 235 '\353', 192 '\300', 2 '\002', 0 '\000', 84 'T', 99 'c', 0 '\000', 20 '\024', 139 '\213', 99 'c', 26 '\032', 6 '\006', 249 '\371', 67 'C', 0 '\000', 21 '\025', 139 '\213', 245 '\365', 19 '\023', 64 '@', 249 '\371', 115 's', 194 '\302', 48 '0', 145 '\221', 224 '\340', 3 '\003', 2 '\002', 170 '\252', 99 'c', 138 '\212', 0 '\000', 169 '\251', 243 '\363', 83 'S', 65 'A', 169 '\251', 253 '\375', 123 '{', 196 '\304', 168 '\250', 191 '\277', 35 '#', 3 '\003', 213 '\325', 192 '\300', 3 '\003', 95 '_', 214 '\326', 161 '\241', 1 '\001', 0 '\000', 176 '\260', 162 '\242', 1 '\001', 0 '\000', 240 '\360', 66 'B', 0 '\000', 13 '\r', 145 '\221', 35 '#', 80 'P', 70 'F', 249 '\371', 97 'a', 0 '\000', 2 '\002', 139 '\213', 227 '\343', 3 '\003', 3 '\003', 203 '\313', 33 '!', 4 '\004', 0 '\000', 209 '\321', 33 '!', 0 '\000', 3 '\003', 138 '\212', 97 'a', 26 '\032', 6 '\006', 249 '\371', 195 '\303', 255 '\377', 255 '\377', 23 '\027', 34 '"', 4 '\004', 64 '@', 249 '\371', 99 'c', 0 '\000', 20 '\024', 139 '\213', 99 'c', 26 '\032', 6 '\006', 249 '\371', 67 'C', 0 '\000', 21 '\025', 139 '\213', 245 '\365', 19 '\023', 64 '@', 249 '\371', 234 '\352', 255 '\377', 255 '\377', 23 '\027', 245 '\365', 19 '\023', 64 '@', 249 '\371', 2 '\002', 0 '\000', 128 '\200', 210 '\322', 243 '\363', 83 'S', 65 'A', 169 '\251', 224 '\340', 3 '\003', 2 '\002', 170 '\252', 253 '\375', 123 '{', 196 '\304', 168 '\250', 191 '\277', 35 '#', 3 '\003', 213 '\325', 192 '\300', 3 '\003', 95 '_', 214 '\326', 63 '?', 35 '#', 3 '\003', 213 '\325', 253 '\375', 123 '{', 191 '\277', 169 '\251', 4 '\004', 0 '\000', 1 '\001', 170 '\252', 63 '?', 0 '\000', 0 '\000', 241 '\361', 253 '\375', 3 '\003', 0 '\000', 145 '\221', 227 '\343', 127 '\177', 64 '@', 178 '\262', 2 '\002', 124 '|', 1 '\001', 155 '\233', 128 '\200', 16 '\020', 67 'C', 250 '\372', 232 '\350', 0 '\000', 0 '\000', 84 'T', 253 '\375', 123 '{', 193 '\301', 168 '\250'...}, std::vector of length 0, capacity 0 = {0 '\000', 237 '\355', 255 '\377', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 152 '\230', 236 '\354', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 148 '\224', 236 '\354', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 144 '\220', 238 '\356', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 192 '\300', 236 '\354', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 132 '\204', 123 '{', 252 '\374', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 176 '\260', 238 '\356', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 9 '\t', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 22 '\026', 233 '\351', 251 '\373', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 112 'p', 236 '\354', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 208 '\320', 115 's', 252 '\374', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 0 '\000', 208 '\320', 255 '\377', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 144 '\220', 123 '{', 52 '4', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 128 '\200', 16 '\020', 254 '\376', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 232 '\350', 246 '\366', 255 '\377', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 136 '\210', 229 '\345', 251 '\373', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 192 '\300', 123 '{', 251 '\373', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 48 '0', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 2 '\002', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 240 '\360', 254 '\376', 247 '\367', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 56 '8', 237 '\355', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 52 '4', 237 '\355', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000', 46 '.', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 96 '`', 237 '\355', 255 '\377', 255 '\377', 255 '\377', 255 '\377', 0 '\000', 0 '\000'...}, std::vector of length 137599952, capacity 3154896 = {27 '\033', 201 '\311', 22 '\026', 136 '\210', 37 '%', 103 'g', 252 '\374', 221 '\335', 100 'd', 159 '\237', 210 '\322', 133 '\205', 59 ';', 66 'B', 172 '\254', 167 '\247', 3 '\003', 57 '9', 129 '\201', 245 '\365', 21 '\025', 208 '\320', 240 '\360', 118 'v', 155 '\233', 120 'x', 29 '\035', 107 'k', 94 '^', 98 'b', 175 '\257', 28 '\034', 207 '\317', 65 'A', 43 '+', 126 '~', 193 '\301', 55 '7', 65 'A', 228 '\344', 218 '\332', 163 '\243', 227 '\343', 231 '\347', 219 '\333', 205 '\315', 201 '\311', 164 '\244', 44 ',', 216 '\330', 4 '\004', 233 '\351', 157 '\235', 37 '%', 170 '\252', 114 'r', 59 ';', 146 '\222', 63 '?', 178 '\262', 10 '\n', 253 '\375', 29 '\035', 76 'L', 159 '\237', 155 '\233', 150 '\226', 170 '\252', 65 'A', 172 '\254', 224 '\340', 20 '\024', 211 '\323', 187 '\273', 242 '\362', 50 '2', 228 '\344', 227 '\343', 160 '\240', 1 '\001', 17 '\021', 208 '\320', 35 '#', 16 '\020', 39 '\'', 36 '$', 156 '\234', 157 '\235', 71 'G', 167 '\247', 157 '\235', 213 '\325', 178 '\262', 64 '@', 6 '\006', 234 '\352', 62 '>', 77 'M', 177 '\261', 147 '\223', 133 '\205', 199 '\307', 198 '\306', 155 '\233', 27 '\033', 34 '"', 98 'b', 90 'Z', 125 '}', 134 '\206', 120 'x', 53 '5', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 3 '\003', 0 '\000', 10 '\n', 0 '\000', 96 '`', 172 '\254', 4 '\004', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 3 '\003', 0 '\000', 25 '\031', 0 '\000', 0 '\000', 0 '\000', 47 '/', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 217 '\331', 15 '\017', 0 '\000', 0 '\000', 18 '\022', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000'...}, std::vector of length 0, capacity 0 = {0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 50 '2', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 255 '\377', 255 '\377', 255 '\377', 127 '\177', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 16 '\020', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 16 '\020', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 103 'g', 108 'l', 105 'i', 98 'b', 99 'c', 46 '.', 103 'g', 109 'm', 111 'o', 110 'n', 46 '.', 109 'm', 105 'i', 110 'n', 97 'a', 114 'r', 99 'c', 115 's', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 50 '2', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 255 '\377', 255 '\377', 255 '\377', 127 '\177', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 50 '2', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 50 '2', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0 '\000'...}, std::vector of length 281401962437248, capacity 281401962203360 = {<error reading variable: Cannot access memory at address 0x10f7fc75a0>} datapath = "" reset_classifier = false #8 0x0000fffff7d1eedc in tesseract::TessBaseAPI::Init (this=this@entry=0xffffffffefe8, datapath=datapath@entry=0x0, language=language@entry=0xaaaaaaaa7600 "eng", oem=oem@entry=tesseract::OEM_DEFAULT, configs=configs@entry=0xfffffffff360, configs_size=configs_size@entry=0, vars_vec=vars_vec@entry=0xffffffffeea8, vars_values=vars_values@entry=0xffffffffee90, set_only_non_debug_params=set_only_non_debug_params@entry=false) at /usr/src/debug/tesseract-5.5.2-1.fc44.aarch64/src/api/baseapi.cpp:299 No locals. #9 0x0000aaaaaaaa51a0 in main1 (argc=3, argv=<optimized out>) at /usr/src/debug/tesseract-5.5.2-1.fc44.aarch64/src/tesseract.cpp:719 lang = 0xaaaaaaaa7600 "eng" image = <optimized out> outputbase = <optimized out> datapath = <optimized out> list_langs = <optimized out> print_parameters = <optimized out> print_fonts_table = <optimized out> dpi = <optimized out> arg_i = <optimized out> pagesegmode = <optimized out> enginemode = <optimized out> vars_vec = std::vector of length 0, capacity 0 vars_values = std::vector of length 0, capacity 0 in_recognition_mode = <optimized out> api = {_vptr.TessBaseAPI = 0xfffff7faa480 <vtable for tesseract::TessBaseAPI+16>, tesseract_ = 0x0, osd_tesseract_ = 0x0, equ_detect_ = 0x0, reader_ = 0x0, thresholder_ = 0x0, paragraph_models_ = 0x0, block_list_ = 0x0, page_res_ = 0x0, input_file_ = "", output_file_ = "test", datapath_ = "", language_ = "", last_oem_requested_ = tesseract::OEM_DEFAULT, recognition_done_ = false, rect_left_ = 0, rect_top_ = 0, rect_width_ = 0, rect_height_ = 0, image_width_ = 0, image_height_ = 0} init_failed = <optimized out> ret_val = <optimized out> b = 255 in_training_mode = <optimized out> renderers = <optimized out> #10 0x0000aaaaaaaa2e10 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/tesseract-5.5.2-1.fc44.aarch64/src/tesseract.cpp:858 No locals.
Seems pixClearAll and pixSetAll functions in leptonica-1.87.0/src/pix2.c are miscompiled by GCC 16 snapshots. I'll note that memset(pix->data, 0, 4LL * pix->wpl * pix->h); and memset(pix->data, 0xff, 4LL * pix->wpl * pix->h); are really weird, I'd have expected sizeof(pix->data[0]) instead of 4LL. As a workaround, 4ULL or (size_t)4 will work fine too.
I see the leptonica upstream workaround/fix was backported to leptonica-1.87.0-3.fc44. Can this be closed?
Well, *this* can, but it looks like there's still a failure in the os-autoinst OCR test suite on aarch64: 2: [20:45:09] t/02-test_ocr.t ............................. 2: ok 1 - log output for needle init 2: ok 2 - ocr match 1 2: ok 3 - OCR area found 2: not ok 4 - multiple OCR regions 2: 1..4 2: 2: # Failed test 'multiple OCR regions' 2: # at t/02-test_ocr.t line 45. 2: # Looks like you failed 1 test of 4. 2: Dubious, test returned 1 (wstat 256, 0x100) so there's likely still another more subtle issue :( I'll find some time to look into it once I can stop Rawhide and F44 openQA tests being on fire.
Note, gcc-16.0.1-0.7.fc45 should have the bug fixes as well.