Skip to content
This repository was archived by the owner on Aug 31, 2021. It is now read-only.

Commit 6d4d14a

Browse files
committed
[[libsystem]] Ensure programs call MCSInitialize() & MCSFinalize()
1 parent 43231e4 commit 6d4d14a

9 files changed

Lines changed: 21 additions & 6 deletions

File tree

engine/src/dsklnxmain.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,8 @@ int main(int argc, char *argv[], char *envp[])
5757
MCsysencoding = strclone(nl_langinfo(CODESET));
5858

5959
extern bool MCModulesInitialize();
60-
if (!MCInitialize() || !MCModulesInitialize() || !MCScriptInitialize())
60+
if (!MCInitialize() || !MCSInitialize() ||
61+
!MCModulesInitialize() || !MCScriptInitialize())
6162
exit(-1);
6263

6364
// Convert the argv array to StringRefs

engine/src/dskosxmain.mm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ int main(int argc, char *argv[], char *envp[])
6464
// MW-2011-08-18: [[ Bug ]] Make sure we initialize Cocoa on startup.
6565
NSApplicationLoad();
6666

67-
if (!MCInitialize() || !MCScriptInitialize())
67+
if (!MCInitialize() || !MCSInitialize() || !MCScriptInitialize())
6868
exit(-1);
6969

7070
// On OSX, argv and envp are encoded as UTF8

engine/src/dskw32main.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,8 @@ int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLi
206206
}
207207

208208
extern bool MCModulesInitialize();
209-
if (!MCInitialize() || !MCModulesInitialize() || !MCScriptInitialize())
209+
if (!MCInitialize() || !MCSInitialize() ||
210+
!MCModulesInitialize() || !MCScriptInitialize())
210211
exit(-1);
211212

212213
// Ensure the command line variable gets set

engine/src/mac-core.mm

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1981,7 +1981,8 @@ int main(int argc, char *argv[], char *envp[])
19811981
CGDisplayRegisterReconfigurationCallback(display_reconfiguration_callback, nil);
19821982

19831983
extern bool MCModulesInitialize();
1984-
if (!MCInitialize() || !MCModulesInitialize() || !MCScriptInitialize())
1984+
if (!MCInitialize() || !MCSInitialize() ||
1985+
!MCModulesInitialize() || !MCScriptInitialize())
19851986
exit(-1);
19861987

19871988
// On OSX, argv and envp are encoded as UTF8

engine/src/mblandroiddc.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1794,6 +1794,7 @@ extern "C" JNIEXPORT void JNICALL Java_com_runrev_android_Engine_doKeyboardHidde
17941794
JNIEXPORT void JNICALL Java_com_runrev_android_Engine_doCreate(JNIEnv *env, jobject object, jobject activity, jobject container, jobject view)
17951795
{
17961796
MCInitialize();
1797+
MCSInitialize();
17971798
MCModulesInitialize();
17981799
MCScriptInitialize();
17991800

engine/src/mbliphoneapp.mm

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2013,7 +2013,8 @@ MC_DLLEXPORT int main(int argc, char *argv[], char *envp[])
20132013
}
20142014
#endif
20152015

2016-
if (!MCInitialize() || !MCModulesInitialize() || !MCScriptInitialize())
2016+
if (!MCInitialize() || !MCSInitialize() ||
2017+
!MCModulesInitialize() || !MCScriptInitialize())
20172018
return -1;
20182019

20192020
int t_exit_code;

engine/src/srvmain.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -610,7 +610,8 @@ extern void MCModulesFinalize();
610610

611611
int main(int argc, char *argv[], char *envp[])
612612
{
613-
if (!MCInitialize() || !MCModulesInitialize() || !MCScriptInitialize())
613+
if (!MCInitialize() || !MCSInitialize() ||
614+
!MCModulesInitialize() || !MCScriptInitialize())
614615
exit(-1);
615616

616617
// THIS IS MAC SPECIFIC AT THE MOMENT BUT SHOULD WORK ON LINUX

engine/src/sysdefs.h

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,13 @@ along with LiveCode. If not see <http://www.gnu.org/licenses/>. */
123123
#include <foundation-objc.h>
124124
#endif
125125

126+
//////////////////////////////////////////////////////////////////////
127+
//
128+
// FOUNDATION SYSTEM LIBRARY
129+
//
130+
131+
#include <foundation-system.h>
132+
126133
//////////////////////////////////////////////////////////////////////
127134
//
128135
// LEGACY INCLUDES AND DEFINES

toolchain/lc-compile/src/test.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616

1717
#include "foundation.h"
1818
#include "foundation-auto.h"
19+
#include "foundation-system.h"
1920
#include "script.h"
2021

2122
extern "C" void MCStringExecPutStringAfter(void);
@@ -66,6 +67,7 @@ int main(int argc, char *argv[])
6667
}
6768

6869
MCInitialize();
70+
MCSInitialize();
6971
MCScriptInitialize();
7072

7173
// Skip command arg.

0 commit comments

Comments
 (0)