synfig: bug fix and mark BROKEN-powerpc

- Fix wrong boundaries in a for loop that caused segfaults, from upstream
- On powerpc, synfig segfaults in multi-threaded mode, breaking
synfigstudio's build. Mark it BROKEN-powerpc to save time in bulks.

OK jca@
This commit is contained in:
cwen 2020-04-23 04:55:46 +00:00
parent 546587c580
commit c870903ab2
2 changed files with 21 additions and 2 deletions

View File

@ -1,11 +1,13 @@
# $OpenBSD: Makefile,v 1.30 2019/11/10 15:32:56 ajacoutot Exp $
# $OpenBSD: Makefile,v 1.31 2020/04/23 04:55:46 cwen Exp $
BROKEN-powerpc = segfault in multi-threaded mode, synfigstudio can't be built
COMMENT = 2D animation software
V= 1.2.1
DISTNAME = synfig-$V
API_V = 1.0
REVISION = 4
REVISION = 5
SHARED_LIBS += synfig 2.0 # 0.0

View File

@ -0,0 +1,17 @@
$OpenBSD: patch-src_synfig_filesystem_cpp,v 1.1 2020/04/23 04:55:46 cwen Exp $
Fix segfaults during the build of multimedia/synfigstudio, from
https://github.com/synfig/synfig/issues/822
Index: src/synfig/filesystem.cpp
--- src/synfig/filesystem.cpp.orig
+++ src/synfig/filesystem.cpp
@@ -181,7 +181,7 @@ String FileSystem::fix_slashes(const String &filename)
{
String fixed = etl::cleanup_path(filename);
if (fixed == ".") fixed = "";
- for(size_t i = 0; i < filename.size(); ++i)
+ for(size_t i = 0; i < fixed.size(); ++i)
if (fixed[i] == '\\') fixed[i] = '/';
return fixed;
}