Esempio n. 1
0
void WebCoreSynchronousLoaderClient::willSendRequest(ResourceHandle* handle, ResourceRequest& request, const ResourceResponse& /*redirectResponse*/)
{
    // FIXME: This needs to be fixed to follow the redirect correctly even for cross-domain requests.
    if (!protocolHostAndPortAreEqual(handle->firstRequest().url(), request.url())) {
        ASSERT(!m_error.cfError());
        RetainPtr<CFErrorRef> cfError(AdoptCF, CFErrorCreate(kCFAllocatorDefault, kCFErrorDomainCFNetwork, kCFURLErrorBadServerResponse, 0));
        m_error = cfError.get();
        m_isDone = true;
        CFURLRequestRef nullRequest = 0;
        request = nullRequest;
        return;
    }
}
Esempio n. 2
0
ImagePtr MagickImageLoader::load(const ImageURL& url)
{
    try {
        Magick::Image image;
        image.density(Magick::Geometry(10, 10));
        image.ping(url.path());
        convertImageDpi(image);
        image.read(url.path());
        return load(image);
    } catch (Magick::Exception &e) {
        cfError() << e.what();
        throw Exception("[MagickImageLoader::load] failed");
    }
}
Esempio n. 3
0
ImagePtr MagickImageLoader::load(std::istream& stream) {
    if (stream.fail())
        throw Exception("[MagickImageLoader::load] invalid stream given");

    long int stream_size = streamSize(stream);
    if (stream_size < 1)
        throw Exception("[MagickImageLoader::load] empty stream given");

    boost::scoped_array<char> tmp(new char[stream_size]);
    Magick::Blob blob;
    blob.updateNoCopy(tmp.get(), stream_size);
    try {
        Magick::Image image;
        image.density("10");
        image.ping(blob);
        convertImageDpi(image);
        image.read(blob);

        return load(image);
    } catch (Magick::Exception &e) {
        cfError(MODULE_RDIB) << e.what();
        throw Exception("[MagickImageLoader::load] failed");
    }
}
Esempio n. 4
0
ResourceError::operator CFErrorRef() const
{
    return cfError();
}