mirror of
https://gitlab.redox-os.org/redox-os/redox.git
synced 2026-06-20 11:54:17 +08:00
openttd: Fix assertion failures due to the mishandling of schemes in the file browser, open links with NetSurf
This commit is contained in:
parent
a0751aefdb
commit
eb32acbf41
@ -1,7 +1,7 @@
|
||||
diff -ruwN source/config.lib source-new/config.lib
|
||||
--- source/config.lib 2018-12-29 07:28:58.975290421 -0700
|
||||
+++ source-new/config.lib 2019-01-06 17:30:43.830146522 -0700
|
||||
@@ -1486,7 +1486,7 @@
|
||||
diff -rupNw source/config.lib source-new/config.lib
|
||||
--- source/config.lib 2019-03-04 21:01:49.523053923 +0100
|
||||
+++ source-new/config.lib 2019-03-04 21:00:15.870317336 +0100
|
||||
@@ -1486,7 +1486,7 @@ make_cflags_and_ldflags() {
|
||||
# Special CXXFlags for HOST
|
||||
CXXFLAGS="$CXXFLAGS"
|
||||
# Libs to compile. In fact this is just LDFLAGS
|
||||
@ -10,10 +10,10 @@ diff -ruwN source/config.lib source-new/config.lib
|
||||
# LDFLAGS used for HOST
|
||||
LDFLAGS="$LDFLAGS"
|
||||
# FEATURES for HOST (lto)
|
||||
diff -ruwN source/src/music/extmidi.cpp source-new/src/music/extmidi.cpp
|
||||
--- source/src/music/extmidi.cpp 2018-12-29 07:28:59.143295501 -0700
|
||||
+++ source-new/src/music/extmidi.cpp 2018-12-29 10:14:06.637357598 -0700
|
||||
@@ -115,7 +115,11 @@
|
||||
diff -rupNw source/src/music/extmidi.cpp source-new/src/music/extmidi.cpp
|
||||
--- source/src/music/extmidi.cpp 2019-03-04 21:01:49.899056924 +0100
|
||||
+++ source-new/src/music/extmidi.cpp 2019-03-04 21:00:15.886317459 +0100
|
||||
@@ -115,7 +115,11 @@ void MusicDriver_ExtMidi::DoPlay()
|
||||
switch (this->pid) {
|
||||
case 0: {
|
||||
close(0);
|
||||
@ -25,10 +25,52 @@ diff -ruwN source/src/music/extmidi.cpp source-new/src/music/extmidi.cpp
|
||||
if (d != -1 && dup2(d, 1) != -1 && dup2(d, 2) != -1) {
|
||||
execvp(this->params[0], this->params);
|
||||
}
|
||||
diff -ruwN source/src/rev.cpp.in source-new/src/rev.cpp.in
|
||||
--- source/src/rev.cpp.in 2018-12-29 07:28:59.167296226 -0700
|
||||
+++ source-new/src/rev.cpp.in 2018-12-29 10:11:42.314241804 -0700
|
||||
@@ -57,7 +57,7 @@
|
||||
diff -rupNw source/src/os/unix/unix.cpp source-new/src/os/unix/unix.cpp
|
||||
--- source/src/os/unix/unix.cpp 2019-03-04 21:01:49.915057051 +0100
|
||||
+++ source-new/src/os/unix/unix.cpp 2019-03-04 20:20:35.800062835 +0100
|
||||
@@ -69,12 +69,12 @@ ULONG __stack = (1024*1024)*2; // maybe
|
||||
|
||||
bool FiosIsRoot(const char *path)
|
||||
{
|
||||
-#if !defined(__MORPHOS__) && !defined(__AMIGAOS__)
|
||||
+#if !defined(__redox__)
|
||||
return path[1] == '\0';
|
||||
#else
|
||||
- /* On MorphOS or AmigaOS paths look like: "Volume:directory/subdirectory" */
|
||||
+ /* On Redox paths look like: "scheme:/directory/subdirectory" */
|
||||
const char *s = strchr(path, ':');
|
||||
- return s != NULL && s[1] == '\0';
|
||||
+ return (s != NULL) && (strlen(s) == 2) && (s[1] == '/') && (s[2] == '\0');
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -106,10 +106,10 @@ bool FiosIsValidFile(const char *path, c
|
||||
{
|
||||
char filename[MAX_PATH];
|
||||
int res;
|
||||
-#if defined(__MORPHOS__) || defined(__AMIGAOS__)
|
||||
- /* On MorphOS or AmigaOS paths look like: "Volume:directory/subdirectory" */
|
||||
+#if defined(__redox__)
|
||||
+ /* On Redox paths look like: "scheme:/directory/subdirectory" */
|
||||
if (FiosIsRoot(path)) {
|
||||
- res = seprintf(filename, lastof(filename), "%s:%s", path, ent->d_name);
|
||||
+ res = seprintf(filename, lastof(filename), "%s%s", path, ent->d_name);
|
||||
} else // XXX - only next line!
|
||||
#else
|
||||
assert(path[strlen(path) - 1] == PATHSEPCHAR);
|
||||
@@ -370,7 +370,7 @@ void OSOpenBrowser(const char *url)
|
||||
if (child_pid != 0) return;
|
||||
|
||||
const char *args[3];
|
||||
- args[0] = "xdg-open";
|
||||
+ args[0] = "netsurf-fb";
|
||||
args[1] = url;
|
||||
args[2] = NULL;
|
||||
execvp(args[0], const_cast<char * const *>(args));
|
||||
diff -rupNw source/src/rev.cpp.in source-new/src/rev.cpp.in
|
||||
--- source/src/rev.cpp.in 2019-03-04 21:01:49.923057115 +0100
|
||||
+++ source-new/src/rev.cpp.in 2019-03-04 21:00:15.922317739 +0100
|
||||
@@ -57,7 +57,7 @@ const char _openttd_build_date[] = __DAT
|
||||
* (compiling from sources without any version control software)
|
||||
* and 2 is for modified revision.
|
||||
*/
|
||||
@ -37,9 +79,9 @@ diff -ruwN source/src/rev.cpp.in source-new/src/rev.cpp.in
|
||||
|
||||
/**
|
||||
* The NewGRF revision of OTTD:
|
||||
diff -ruwN source/src/stdafx.h source-new/src/stdafx.h
|
||||
--- source/src/stdafx.h 2018-12-29 07:28:59.203297314 -0700
|
||||
+++ source-new/src/stdafx.h 2018-12-29 10:11:42.314241804 -0700
|
||||
diff -rupNw source/src/stdafx.h source-new/src/stdafx.h
|
||||
--- source/src/stdafx.h 2019-03-04 21:01:49.955057370 +0100
|
||||
+++ source-new/src/stdafx.h 2019-03-04 21:00:15.930317800 +0100
|
||||
@@ -12,6 +12,9 @@
|
||||
#ifndef STDAFX_H
|
||||
#define STDAFX_H
|
||||
@ -50,10 +92,10 @@ diff -ruwN source/src/stdafx.h source-new/src/stdafx.h
|
||||
#if defined(__APPLE__)
|
||||
#include "os/macosx/osx_stdafx.h"
|
||||
#endif /* __APPLE__ */
|
||||
diff -ruwN source/src/string.cpp source-new/src/string.cpp
|
||||
--- source/src/string.cpp 2018-12-29 07:28:59.207297436 -0700
|
||||
+++ source-new/src/string.cpp 2018-12-29 10:11:42.314241804 -0700
|
||||
@@ -528,7 +528,7 @@
|
||||
diff -rupNw source/src/string.cpp source-new/src/string.cpp
|
||||
--- source/src/string.cpp 2019-03-04 21:01:49.955057370 +0100
|
||||
+++ source-new/src/string.cpp 2019-03-04 21:00:15.938317862 +0100
|
||||
@@ -528,7 +528,7 @@ size_t Utf8TrimString(char *s, size_t ma
|
||||
return length;
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user