36 const char* url,
const char* method,
37 const char* upload_data,
size_t* upload_data_size) {
49 request->fUploadContext = uc;
54 if (0 != *upload_data_size) {
56 MHD_post_process(uc->
fPostProcessor, upload_data, *upload_data_size);
57 *upload_data_size = 0;
65 std::unique_ptr<SkStreamAsset> stream(request->fUploadContext->fStream.detachAsStream());
66 if (!request->initPictureFromStream(stream.get())) {
67 fprintf(stderr,
"Could not create picture from stream.\n");
72 delete request->fUploadContext;
73 request->fUploadContext =
nullptr;
static int process_upload_data(void *cls, enum MHD_ValueKind kind, const char *key, const char *filename, const char *content_type, const char *transfer_encoding, const char *data, uint64_t off, size_t size)
static const size_t kBufferSize
int handle(Request *request, MHD_Connection *connection, const char *url, const char *method, const char *upload_data, size_t *upload_data_size) override
bool canHandle(const char *method, const char *url) override
SkDynamicMemoryWStream fStream
MHD_Connection * connection
MHD_PostProcessor * fPostProcessor