git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Usermode - Handled read failures in readline correctly
[tpg/acess2.git]
/
AcessNative
/
ld-acess_src
/
main.c
diff --git
a/AcessNative/ld-acess_src/main.c
b/AcessNative/ld-acess_src/main.c
index
80c5b7a
..
a03e963
100644
(file)
--- a/
AcessNative/ld-acess_src/main.c
+++ b/
AcessNative/ld-acess_src/main.c
@@
-15,6
+15,9
@@
extern void Request_Preinit(void);
// === PROTOTYPES ===
void CallUser(void *Entry, int argc, char *argv[], char **envp) __attribute__((noreturn));
// === PROTOTYPES ===
void CallUser(void *Entry, int argc, char *argv[], char **envp) __attribute__((noreturn));
+// === GLOBALS ===
+char **gEnvP;
+
// === CODE ===
int main(int argc, char *argv[], char **envp)
{
// === CODE ===
int main(int argc, char *argv[], char **envp)
{
@@
-25,6
+28,8
@@
int main(int argc, char *argv[], char **envp)
int (*appMain)(int, char *[], char **);
void *base;
int rv;
int (*appMain)(int, char *[], char **);
void *base;
int rv;
+
+ gEnvP = envp;
Request_Preinit();
Request_Preinit();
@@
-48,7
+53,7
@@
int main(int argc, char *argv[], char **envp)
}
if(strcmp(argv[i], "--open") == 0) {
}
if(strcmp(argv[i], "--open") == 0) {
- if( acess_
open(argv[++i], 6) == -1 ) {
// Read/Write
+ if( acess_
_SysOpen(argv[++i], 6) == -1 ) {
// Read/Write
fprintf(stderr, "Unable to open '%s'\n", argv[i]);
exit(1);
}
fprintf(stderr, "Unable to open '%s'\n", argv[i]);
exit(1);
}
@@
-80,7
+85,10
@@
int main(int argc, char *argv[], char **envp)
base = Binary_Load(appPath, (uintptr_t*)&appMain);
printf("[DEBUG %i] base = %p\n", giSyscall_ClientID, base);
base = Binary_Load(appPath, (uintptr_t*)&appMain);
printf("[DEBUG %i] base = %p\n", giSyscall_ClientID, base);
- if( !base ) return 127;
+ if( !base ) {
+ *((char*)NULL) = 0;
+ return 127;
+ }
printf("==============================\n");
printf("[DEBUG %i] %i ", giSyscall_ClientID, appArgc);
printf("==============================\n");
printf("[DEBUG %i] %i ", giSyscall_ClientID, appArgc);
@@
-132,7
+140,8
@@
void Notice(const char *Format, ...)
void Debug(const char *Format, ...)
{
va_list args;
void Debug(const char *Format, ...)
{
va_list args;
- printf("[DEBUG %i] ", giSyscall_ClientID);
+ printf("[DEBUG ");
+ printf("%2i] ", giSyscall_ClientID);
va_start(args, Format);
vprintf(Format, args);
va_end(args);
va_start(args, Format);
vprintf(Format, args);
va_end(args);
UCC
git Repository :: git.ucc.asn.au