Skip to content
This repository has been archived by the owner on Nov 1, 2021. It is now read-only.

Commit

Permalink
buildscripts: restore boost format patch
Browse files Browse the repository at this point in the history
removed by mistake
  • Loading branch information
xyzz committed Oct 16, 2021
1 parent 9ab1620 commit f0034a0
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 0 deletions.
1 change: 1 addition & 0 deletions buildscripts/CMakeLists.txt
Expand Up @@ -484,6 +484,7 @@ set(OPENMW_PATCH
patch -d <SOURCE_DIR> -p1 -t -N < ${CMAKE_SOURCE_DIR}/patches/openmw/0009-windowmanagerimp-always-show-mouse-when-possible-pat.patch &&
patch -d <SOURCE_DIR> -p1 -t -N < ${CMAKE_SOURCE_DIR}/patches/openmw/0010-android-fix-context-being-lost-on-app-minimize.patch &&
patch -d <SOURCE_DIR> -p1 -t -N < ${CMAKE_SOURCE_DIR}/patches/openmw/0014-settingswindow-save-user-settings-file-when-ok-is-pr.patch &&
patch -d <SOURCE_DIR> -p1 -t -N < ${CMAKE_SOURCE_DIR}/patches/openmw/0012-components-misc-stringops-use-boost-format-instead-o.patch &&
patch -d <SOURCE_DIR> -p1 -t -N < ${CMAKE_SOURCE_DIR}/patches/openmw/fix-build.patch &&
patch -d <SOURCE_DIR> -p1 -t -N < ${CMAKE_SOURCE_DIR}/patches/openmw/refraction-fix.patch &&
cp ${CMAKE_SOURCE_DIR}/patches/openmw/android_main.cpp <SOURCE_DIR>/apps/openmw/android_main.cpp
Expand Down
@@ -0,0 +1,38 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Ilya Zhuravlev <whatever@xyz.is>
Date: Tue, 23 Feb 2021 11:52:20 -0500
Subject: [PATCH] components/misc/stringops: use boost format instead of
snprintf

snprintf randomly returns -1 on android
---
components/misc/stringops.hpp | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/components/misc/stringops.hpp b/components/misc/stringops.hpp
index 086352235..52d54acb8 100644
--- a/components/misc/stringops.hpp
+++ b/components/misc/stringops.hpp
@@ -6,6 +6,7 @@
#include <algorithm>
#include <string_view>
#include <iterator>
+#include <boost/format.hpp>

#include "utf8stream.hpp"

@@ -250,13 +251,7 @@ public:
template <typename ... Args>
static std::string format(const char* fmt, Args const & ... args)
{
- auto size = std::snprintf(nullptr, 0, fmt, argument(args) ...);
- // Note: sprintf also writes a trailing null character. We should remove it.
- std::string ret(size+1, '\0');
- std::sprintf(&ret[0], fmt, argument(args) ...);
- ret.erase(size);
-
- return ret;
+ return boost::str((boost::format(fmt) % ... % args));
}

template <typename ... Args>

0 comments on commit f0034a0

Please sign in to comment.