<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div>Thanks for directing me into the right direction. It turns out a couple of functions were not implemented in the OpenGLGraphicsManager. As a result it was working when using a SDL graphic mode (e.g. "X2") but not when using OpenGL. I also changed the code to only get a warning instead of erroring out when that happens. The cloud icon doesn't seem so important to me that we need to close ScummVM when we cannot display it ;)</div><div><br></div><div>Thierry</div><br><div><div>On 05 Sep 2016, at 02:13, Alexander Tkachev <<a href="mailto:alexander@tkachov.ru">alexander@tkachov.ru</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>We're loading an icon from data array into TransparentSurface (CloudIcon::loadIcon() @ <a href="https://github.com/scummvm/scummvm/blob/master/backends/networking/curl/cloudicon.cpp#L115">cloudicon.cpp:115</a>). When it's loaded, it's being converted to OSD surface format, because that's where it's going to be drawn on. This error means OSD format is neither 16bpp nor 32bpp.<br><br>The icon is png with alpha, so it's 32bpp. OSD, IIRC, had 24bpp. Now it should be 32bpp too. I guess that's yet another backend I haven't changed OSD code on.</div><div> </div><div><span>— Alexander</span></div><div> </div><div> </div><div> </div><div>05.09.2016, 05:30, "Thierry Crozat" <<a href="mailto:criezy@scummvm.org">criezy@scummvm.org</a>>:</div><blockquote type="cite"><div>I have activated my test app on Dropbox but when I connect ScummVM to DropBox I get a crash that seems related to the cloud icon.</div><div>This is on OS X with the latest code (git ed92175b)</div><div> </div><div>In the console I get the following error:</div><div>Surface::convertTo(): Can only convert to 28pp and 48pp!</div><div> </div><div>The relevant part of the call stack is:</div><div><div>12  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000101</span>d97ebe OSystem_SDL::fatalError() + 46 (sdl.cpp:369)</div><div>13  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>f348f1 error(char const*, ...) + 673 (textconsole.cpp:103)</div><div>14  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>de0f9a Graphics::TransparentSurface::convertTo(Graphics::PixelFormat const&, unsigned char const*) const + 330 (transparent_surface.cpp:999)</div><div>15  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d2f0f8 Networking::CloudIcon::loadIcon(Graphics::TransparentSurface&, unsigned char*, unsigned int) + 312 (cloudicon.cpp:125)</div><div>16  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d2e9e5 Networking::CloudIcon::initIcons() + 69 (cloudicon.cpp:110)</div><div>17  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d2e993 Networking::CloudIcon::CloudIcon() + 115 (cloudicon.cpp:40)</div><div>18  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d2ea35 Networking::CloudIcon::CloudIcon() + 21 (cloudicon.cpp:40)</div><div>19  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d2b1f3 Networking::ConnectionManager::ConnectionManager() + 147 (connectionmanager.cpp:40)</div><div>20  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d2b245 Networking::ConnectionManager::ConnectionManager() + 21 (connectionmanager.cpp:43)</div><div>21  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d2c063 Common::Singleton<Networking::ConnectionManager>::makeInstance() + 35 (singleton.h:52)</div><div>22  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d2bf2a Common::Singleton<Networking::ConnectionManager>::instance() + 26 (singleton.h:71)</div><div>23  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>cf3d3b Cloud::Storage::addRequest(Networking::Request*) + 107 (storage.cpp:55)</div><div>24  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d065a5 Cloud::Dropbox::DropboxStorage::getAccessToken(Common::String) + 1141 (dropboxstorage.cpp:91)</div><div>25  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d060fd Cloud::Dropbox::DropboxStorage::DropboxStorage(Common::String) + 125 (dropboxstorage.cpp:71)</div><div>26  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d065e5 Cloud::Dropbox::DropboxStorage::DropboxStorage(Common::String) + 21 (dropboxstorage.cpp:72)</div><div>27  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>cf0edd Cloud::CloudManager::connectStorage(unsigned int, Common::String) + 269 (cloudmanager.cpp:255)</div><div>28  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>cd4ff1 GUI::StorageWizardDialog::handleCommand(GUI::CommandSender*, unsigned int, unsigned int) + 3073 (storagewizarddialog.cpp:258)</div><div>29  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d39c4b GUI::CommandSender::sendCommand(unsigned int, unsigned int) + 107 (object.h:56)</div><div>30  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d39ab1 Networking::IndexPageHandler::handle(Networking::Client&) + 385 (indexpagehandler.cpp:58)</div><div>31  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d40229 Networking::LocalWebserver::handleClient(unsigned int) + 649 (localwebserver.cpp:230)</div><div>32  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d3f2b8 Networking::LocalWebserver::handle() + 152 (localwebserver.cpp:186)</div><div>33  scummvm                       <span style="white-space:pre;"> </span>0x<span>0000000103</span>d3f219 Networking::localWebserverTimer(void*) + 25 (localwebserver.cpp:69)</div></div><div> </div><div>Any idea what is wrong?</div><div> </div><div>Thierry</div> <div><div>On 01 Sep 2016, at 17:58, Alexander Tkachev <<a href="mailto:alexander@tkachov.ru">alexander@tkachov.ru</a>> wrote:</div> <blockquote type="cite"><div><div>Hi everyone,</div><div> </div><div>Eugene asked me to write a short note for porters. We've merged my PR recently, which adds two features in ScummVM: Cloud support and local webserver.</div><div> </div><div>The first one needs libcurl, which is detected using curl-config in configure. If it is found, <span style="font-family:courier new,monospace;"><span style="background-color:#d3d3d3;">USE_LIBCURL</span></span> is defined and backends/cloud files are used.</div><div> </div><div>The second one needs SDL_net and <span style="font-family:courier new,monospace;"><span style="background-color:#d3d3d3;">USE_SDL_NET</span></span> is defined if it's found. Local webserver could be found within backends/networking/sdl_net.</div><div> </div><div>There are some interactive tests in testbed, mostly for Cloud.</div><div> </div><div>There are also some minor additional features, which make user experience a bit better. Those are URL opening and Connection::isLimited() function. Cloud works fine without these, but you can implement these if you want and it's available for the platform. There is an interactive test for urlOpen() in testbed too.</div><div> </div><div>Finally, I've updated OSD to show Cloud sync icon. But I didn't update it in some backends, and thus buildbot fails to build these. I might have time to fix these soon, but I won't be able to test whether it works as it should.</div><div> </div><div>Also, as we haven't set up official ScummVM Cloud apps yet, you'd have to register your own test apps in order to test how Cloud API works. App's KEY/SECRET should be added to the [cloud] section of your scummvm.ini file:</div><div><span style="font-family:courier new,monospace;"><span style="background-color:#d3d3d3;">DROPBOX_KEY=...</span></span></div><div><span style="font-family:courier new,monospace;"><span style="background-color:#d3d3d3;">DROPBOX_SECRET=...</span></span></div><div><span style="font-family:courier new,monospace;"><span style="background-color:#d3d3d3;">ONEDRIVE_KEY=...</span></span></div><div><span style="font-family:courier new,monospace;"><span style="background-color:#d3d3d3;">ONEDRIVE_SECRET=...</span></span></div><div><span style="font-family:courier new,monospace;"><span style="background-color:#d3d3d3;">GOOGLE_DRIVE_KEY=...</span></span></div><div><span style="font-family:courier new,monospace;"><span style="background-color:#d3d3d3;">GOOGLE_DRIVE_SECRET=...</span></span></div><div><span style="font-family:courier new,monospace;"><span style="background-color:#d3d3d3;">BOX_KEY=...</span></span></div><div><span style="font-family:courier new,monospace;"><span style="background-color:#d3d3d3;">BOX_SECRET=...</span></span></div><div> </div><div>As Cloud feature works with these providers similarly, you don't have to register all four apps. I'd recommend Dropbox, as it's really simple to create an app there. Short links to <a href="http://scummvm.org/">scummvm.org</a> are redirecting to my app, so instead of typing those you'd have to make a link on your own. For example, this link template could be used for Dropbox app:</div><div><span style="font-family:courier new,monospace;"><span style="background-color:#d3d3d3;"><a href="https://www.dropbox.com/1/oauth2/authorize?response_type=code&redirect_uri=https://www.scummvm.org/c/code&client_id=%3CDROPBOX_KEY%3E">https://www.dropbox.com/1/oauth2/authorize?response_type=code&redirect_uri=https://www.scummvm.org/c/code&client_id=<DROPBOX_KEY></a></span></span></div><div> </div><div>That link redirects to <span style="font-family:courier new,monospace;"><span style="background-color:#d3d3d3;"><a href="https://www.scummvm.org/c/code">https://www.scummvm.org/c/code</a></span></span>. If you want to test auth using local webserver, you should put <span style="font-family:courier new,monospace;"><span style="background-color:#d3d3d3;"><a href="http://localhost:12345/">http://localhost:12345/</a></span></span> in <span style="font-family:courier new,monospace;"><span style="background-color:#d3d3d3;">redirect_uri</span></span> instead.</div><div> </div><div>These redirect_uris should be allowed in application settings on developer's page.</div></div><div> </div><div><span>— Alexander</span></div><div> </div>_______________________________________________<br>Scummvm-devel mailing list<br><a href="mailto:Scummvm-devel@lists.scummvm.org">Scummvm-devel@lists.scummvm.org</a><br><a href="http://lists.scummvm.org/listinfo/scummvm-devel">http://lists.scummvm.org/listinfo/scummvm-devel</a></blockquote></div></blockquote></blockquote></div><br></body></html>