diff --git a/doc/changelog.dox b/doc/changelog.dox index 5975c9f43..89e474210 100644 --- a/doc/changelog.dox +++ b/doc/changelog.dox @@ -1062,7 +1062,9 @@ See also: more JS API functions optional, and circumvents the need for users to specify `-s EXPORTED_FUNCTIONS` on their side. See [mosra/magnum#619](https://github.com/mosra/magnum/issues/619). - Fixed build of @ref Platform::EmscriptenApplication on Emscripten 3.1.49 - and newer (see [mosra/magnum#631](https://github.com/mosra/magnum/issues/631)) + and newer (see [mosra/magnum#631](https://github.com/mosra/magnum/issues/631)), + and on Emscripten 3.1.62 and newer (see + [mosra/magnum#641](https://github.com/mosra/magnum/pull/641)) - The Emscripten toolchain no longer uses a `*.bc` extension for static libraries, as that breaks builds with version 3.1.52+. See [mosra/magnum#633](https://github.com/mosra/magnum/issues/633) for more diff --git a/doc/credits.dox b/doc/credits.dox index 2aa39d8ba..c02f40f0c 100644 --- a/doc/credits.dox +++ b/doc/credits.dox @@ -240,6 +240,8 @@ Are the below lists missing your name or something's wrong? Android buildsystem fixes and improvements - **Vladislav** ([\@dranikpg](https://github.com/dranikpg)) --- Async @ref GL shader compilation +- **Will Usher** ([\@Twinklebear](https://github.com/Twinklebear)) --- + @ref Platform::EmscriptenApplication build fixes */ } diff --git a/src/Magnum/Platform/EmscriptenApplication.cpp b/src/Magnum/Platform/EmscriptenApplication.cpp index 6832eb88f..41afe456d 100644 --- a/src/Magnum/Platform/EmscriptenApplication.cpp +++ b/src/Magnum/Platform/EmscriptenApplication.cpp @@ -5,6 +5,7 @@ 2020, 2021, 2022, 2023 Vladimír Vondruš Copyright © 2018, 2019, 2020 Jonathan Hale Copyright © 2020 Pablo Escobar + Copyright © 2024 Will Usher Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), @@ -502,7 +503,9 @@ void EmscriptenApplication::handleCanvasResize(const EmscriptenUiEvent* event) { void EmscriptenApplication::setupCallbacks(bool resizable) { /* Since 1.38.17 all emscripten_set_*_callback() are macros. Play it safe and wrap all lambdas in () to avoid the preprocessor getting upset when - seeing commas */ + seeing commas. Furthermore, in 13.1.62 the EM_BOOL type was changed from + int to bool, so to preserve compatibility with both the past and future + versions the lambdas have an explicit EM_BOOL return type annotation. */ /* Set up the resize callback. Because browsers are only required to fire resize events on the window and not on particular DOM elements, we need