{"record":{"id":"ffa413ba829779f0","repo":"mudler/LocalAI","slug":"failed-to-load-reference-image-from-s-n","errorCode":null,"errorMessage":"Failed to load reference image from '%s'\\n","messagePattern":"Failed to load reference image from '(.+?)'\\\\n","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"backend/go/stablediffusion-ggml/cpp/gosd.cpp","lineNumber":945,"sourceCode":"    std::vector<sd_image_t> ref_images_vec;\n    std::vector<uint8_t*> ref_image_buffers;\n\n    if (ref_images_count > 0 && ref_images != NULL) {\n        fprintf(stderr, \"Loading %d reference images\\n\", ref_images_count);\n\n        for (int i = 0; i < ref_images_count; i++) {\n            if (ref_images[i] == NULL || strlen(ref_images[i]) == 0) {\n                continue;\n            }\n\n            fprintf(stderr, \"Loading reference image %d: %s\\n\", i + 1, ref_images[i]);\n\n            int c = 0;\n            int ref_width = 0;\n            int ref_height = 0;\n            uint8_t* ref_image_buffer = stbi_load(ref_images[i], &ref_width, &ref_height, &c, 3);\n            if (ref_image_buffer == NULL) {\n                fprintf(stderr, \"Failed to load reference image from '%s'\\n\", ref_images[i]);\n                continue;\n            }\n            if (c < 3) {\n                fprintf(stderr, \"Reference image must have at least 3 channels, got %d\\n\", c);\n                free(ref_image_buffer);\n                continue;\n            }\n\n            // Resize reference image if dimensions don't match\n            if (ref_width != width || ref_height != height) {\n                fprintf(stderr, \"Resizing reference image from %dx%d to %dx%d\\n\", ref_width, ref_height, width, height);\n\n                uint8_t* resized_ref_buffer = (uint8_t*)malloc(height * width * 3);\n                if (resized_ref_buffer == NULL) {\n                    fprintf(stderr, \"Failed to allocate memory for resized reference image\\n\");\n                    free(ref_image_buffer);\n                    continue;\n                }","sourceCodeStart":927,"sourceCodeEnd":963,"githubUrl":"https://github.com/mudler/LocalAI/blob/44413a9d06bf5bc52ce088ba8ca74e5a2e8bee26/backend/go/stablediffusion-ggml/cpp/gosd.cpp#L927-L963","documentation":"The reference image path could not be decoded. Guard: verify the reference file exists and is a supported image format before starting the diffusion run; return a clear invalid-argument error.","triggerScenarios":"Thrown at backend/go/stablediffusion-ggml/cpp/gosd.cpp:945 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Verify the reference image path is correct and the file exists.","Confirm the reference file is a valid image in a supported format.","Check file permissions on the reference image."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"44413a9d06bf5bc52ce088ba8ca74e5a2e8bee26","analyzedAt":"2026-08-15T10:13:50.291Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}