Skip to content

Commit 1d447ec

Browse files
committed
Shifting printing over to handle malloc OOM error. Also normalized all error messages to steady format.
1 parent 1f58be9 commit 1d447ec

File tree

3 files changed

+25
-18
lines changed

3 files changed

+25
-18
lines changed

src/additions.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
12
#ifndef ADDITIONS_H_
23
#define ADDITIONS_H_
34

src/console.c

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,10 @@ int start_protective_mode(lua_CFunction func, const char* file, char** parameter
168168
// returns a malloc'd string with each split item being seperated by \0
169169
char* strsplit(const char* str1, const char lookout, size_t len, size_t max) {
170170
char* cpy = malloc(len);
171+
if(cpy == 0) {
172+
fprintf(stderr, "Error: Out of memory.\n");
173+
return 0;
174+
}
171175
memcpy(cpy, str1, len);
172176

173177
size_t temp_max = max;
@@ -181,6 +185,7 @@ char* strsplit(const char* str1, const char lookout, size_t len, size_t max) {
181185
break;
182186
}
183187
if(temp_max == max) {
188+
fprintf(stderr, "Error: Incorrect -D specified. Use format 'name=value'.\n");
184189
free(cpy);
185190
return 0;
186191
}
@@ -250,7 +255,7 @@ int main(int argc, char* argv[])
250255
if(globals_argv == 0) {
251256
globals_argv = malloc(DEFINES_INIT * sizeof(char*));
252257
if(globals_argv == 0) {
253-
fprintf(stderr, "%s\n", "[1] Out of memory");
258+
fprintf(stderr, "%s\n", "Error: Out of memory.");
254259
return EXIT_FAILURE;
255260
}
256261
globals_argv_len = DEFINES_INIT;
@@ -259,7 +264,7 @@ int main(int argc, char* argv[])
259264
globals_argv_len += DEFINES_EXPANSION;
260265
globals_argv = realloc(globals_argv, (globals_argv_len + DEFINES_EXPANSION) * sizeof(char*));
261266
if(globals_argv == 0) {
262-
fprintf(stderr, "%s\n", "[1] Out of memory");
267+
fprintf(stderr, "%s\n", "Error: Out of memory.");
263268
return EXIT_FAILURE;
264269
}
265270
}
@@ -280,7 +285,7 @@ int main(int argc, char* argv[])
280285

281286
// make sure to start in the requested directory, if any
282287
if(change_start == 1 && chdir(start) == -1) {
283-
fprintf(stderr, "%s\n", "Invalid start directory supplied");
288+
fprintf(stderr, "%s\n", "Error: Invalid start directory supplied.");
284289
fprintf(stdout, "%s\n", HELP_MESSAGE);
285290
return EXIT_FAILURE;
286291
}
@@ -289,7 +294,7 @@ int main(int argc, char* argv[])
289294
// initiate lua
290295
L = luaL_newstate();
291296
if(L == 0) {
292-
fprintf(stderr, "%s\n", "Lua Allocation Failed: Out of Memory");
297+
fprintf(stderr, "%s\n", "Lua Allocation Error: Out of Memory.");
293298
return EXIT_FAILURE;
294299
}
295300

@@ -300,10 +305,8 @@ int main(int argc, char* argv[])
300305
char* globals_D_offset = globals_argv[i] + 2;
301306

302307
char* m_args = strsplit(globals_D_offset, '=', strlen(globals_D_offset) + 1, 2);
303-
if(m_args == 0) {
304-
fprintf(stderr, "Error: Incorrect -D specified. Use format 'name=value'.\n");
308+
if(m_args == 0)
305309
return EXIT_FAILURE;
306-
}
307310

308311
char* arg1 = m_args;
309312
char* arg2 = arg1 + (strlen(arg1) + 1);
@@ -326,7 +329,7 @@ int main(int argc, char* argv[])
326329
if(print_version == 1) {
327330
lua_State* gL = luaL_newstate();
328331
if(gL == 0) {
329-
fprintf(stderr, "%s\n", "Allocation Failed: Out of Memory");
332+
fprintf(stderr, "%s\n", "Error: Out of memory.");
330333
return EXIT_FAILURE;
331334
}
332335

src/consolew.c

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -135,12 +135,12 @@ static void print_error(LuaConsoleError error) {
135135
static int lua_main_postexist(lua_State* L) {
136136
char* buffer = malloc(PRIMARY_BUFFER_SIZE);
137137
if(buffer == 0) {
138-
fprintf(stderr, "%s\n", "Allocation Failed: Out of Memory");
138+
fprintf(stderr, "%s\n", "Error: Out of memory.");
139139
exit(EXIT_FAILURE);
140140
}
141141
char* buffer2 = malloc(SECONDARY_BUFFER_SIZE);
142142
if(buffer2 == 0) {
143-
fprintf(stderr, "%s\n", "Allocation Failed: Out of Memory");
143+
fprintf(stderr, "%s\n", "Error: Out of memory.");
144144
exit(EXIT_FAILURE);
145145
}
146146

@@ -248,6 +248,10 @@ int start_protective_mode(lua_CFunction func, const char* file, char** parameter
248248
// returns a malloc'd string with each split item being seperated by \0
249249
char* strsplit(const char* str1, const char lookout, size_t len, size_t max) {
250250
char* cpy = malloc(len);
251+
if(cpy == 0) {
252+
fprintf(stderr, "Error: Out of memory.\n");
253+
return 0;
254+
}
251255
memcpy(cpy, str1, len);
252256

253257
size_t temp_max = max;
@@ -261,6 +265,7 @@ char* strsplit(const char* str1, const char lookout, size_t len, size_t max) {
261265
break;
262266
}
263267
if(temp_max == max) {
268+
fprintf(stderr, "Error: Incorrect -D specified. Use format 'name=value'.\n");
264269
free(cpy);
265270
return 0;
266271
}
@@ -335,7 +340,7 @@ int main(int argc, char* argv[])
335340
if(globals_argv == 0) {
336341
globals_argv = malloc(DEFINES_INIT * sizeof(char*));
337342
if(globals_argv == 0) {
338-
fprintf(stderr, "%s\n", "[1] Out of memory");
343+
fprintf(stderr, "%s\n", "Error: Out of memory.");
339344
return EXIT_FAILURE;
340345
}
341346
globals_argv_len = DEFINES_INIT;
@@ -344,7 +349,7 @@ int main(int argc, char* argv[])
344349
globals_argv_len += DEFINES_EXPANSION;
345350
globals_argv = realloc(globals_argv, (globals_argv_len + DEFINES_EXPANSION) * sizeof(char*));
346351
if(globals_argv == 0) {
347-
fprintf(stderr, "%s\n", "[1] Out of memory");
352+
fprintf(stderr, "%s\n", "Error: Out of memory.");
348353
return EXIT_FAILURE;
349354
}
350355
}
@@ -365,7 +370,7 @@ int main(int argc, char* argv[])
365370

366371
// make sure to start in the requested directory, if any
367372
if(change_start == 1 && chdir(start) == -1) {
368-
fprintf(stderr, "%s\n", "Invalid start directory supplied");
373+
fprintf(stderr, "%s\n", "Error: Invalid start directory supplied.");
369374
fprintf(stdout, "%s\n", HELP_MESSAGE);
370375
return EXIT_FAILURE;
371376
}
@@ -374,7 +379,7 @@ int main(int argc, char* argv[])
374379
// initiate lua
375380
L = luaL_newstate();
376381
if(L == 0) {
377-
fprintf(stderr, "%s\n", "Lua Allocation Failed: Out of Memory");
382+
fprintf(stderr, "%s\n", "Lua Allocation Error: Out of memory.");
378383
return EXIT_FAILURE;
379384
}
380385

@@ -385,10 +390,8 @@ int main(int argc, char* argv[])
385390
char* globals_D_offset = globals_argv[i] + 2;
386391

387392
char* m_args = strsplit(globals_D_offset, '=', strlen(globals_D_offset) + 1, 2);
388-
if(m_args == 0) {
389-
fprintf(stderr, "Error: Incorrect -D specified. Use format 'name=value'.\n");
393+
if(m_args == 0)
390394
return EXIT_FAILURE;
391-
}
392395

393396
char* arg1 = m_args;
394397
char* arg2 = arg1 + (strlen(arg1) + 1);
@@ -411,7 +414,7 @@ int main(int argc, char* argv[])
411414
if(print_version == 1) {
412415
lua_State* gL = luaL_newstate();
413416
if(gL == 0) {
414-
fprintf(stderr, "%s\n", "Allocation Failed: Out of Memory");
417+
fprintf(stderr, "%s\n", "Error: Out of memory.");
415418
return EXIT_FAILURE;
416419
}
417420

0 commit comments

Comments
 (0)