diff options
Diffstat (limited to 'tools/skiaserve/urlhandlers')
-rw-r--r-- | tools/skiaserve/urlhandlers/ImgHandler.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/tools/skiaserve/urlhandlers/ImgHandler.cpp b/tools/skiaserve/urlhandlers/ImgHandler.cpp index 3e390fe832..a0e58bcc4d 100644 --- a/tools/skiaserve/urlhandlers/ImgHandler.cpp +++ b/tools/skiaserve/urlhandlers/ImgHandler.cpp @@ -25,19 +25,22 @@ int ImgHandler::handle(Request* request, MHD_Connection* connection, SkTArray<SkString> commands; SkStrSplit(url, "/", &commands); - if (!request->hasPicture() || commands.count() > 2) { + if (!request->hasPicture() || commands.count() > 3) { return MHD_NO; } - int n; + int n, m = -1; // /img or /img/N if (commands.count() == 1) { n = request->fDebugCanvas->getSize() - 1; + } else if (commands.count() == 2) { + sscanf(commands[1].c_str(), "%d", &n); } else { sscanf(commands[1].c_str(), "%d", &n); + sscanf(commands[2].c_str(), "%d", &m); } - SkAutoTUnref<SkData> data(request->drawToPng(n)); + SkAutoTUnref<SkData> data(request->drawToPng(n, m)); return SendData(connection, data, "image/png"); } |