忽略ImageMagick或GraphicsMagick警告

时间:2019-07-10 10:59:13

标签: c++ imagemagick graphicsmagick

下面的代码不仅捕获错误,还捕获带有某些特定输入的警告。有什么方法可以忽略所有警告,而不是在catch块中对其进行检查吗?我知道我可以在终端上使用+profile "*",但是我不知道如何在C ++中解决它。

try {
    Blob buff = Blob(input, inLen);
    pImage->read(buff);
} catch (Exception &error) {
    cout << error.what() << endl;
    delete(pImage);
    return -1;
}

1 个答案:

答案 0 :(得分:2)

如果我正确地阅读Exception.cpp,则Magick::Exception太普通了。尝试将警告与错误隔离。

try {
    Magick::Blob buff = Magick::Blob(input, inLen);
    pImage->read(buff);
} catch (Magick::Warning &warning) {
    // Ignore, or log
} catch (Magick::Error &error) {
    cout << error.what() << endl;
    delete(pImage);
    return -1;
}