Reindent and cleanup.
This commit is contained in:
parent
5341a3e2ee
commit
fd02259c7f
5 changed files with 93 additions and 99 deletions
149
misc.c
149
misc.c
|
@ -12,13 +12,12 @@
|
|||
|
||||
void* xmalloc(size_t size)
|
||||
{
|
||||
void* ptr = malloc(size);
|
||||
if (ptr == NULL)
|
||||
{
|
||||
fprintf(stderr, "Out of memory!\n");
|
||||
exit(EXIT_FAILURE);
|
||||
void* ptr = malloc(size);
|
||||
if (ptr == NULL) {
|
||||
fprintf(stderr, "Out of memory!\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
return(ptr);
|
||||
return (ptr);
|
||||
}
|
||||
|
||||
char* xstrdup(const char* s)
|
||||
|
@ -198,59 +197,57 @@ bool GETIN(FILE *input,
|
|||
|
||||
void echo_input(FILE* destination, char* input_prompt, char* input)
|
||||
{
|
||||
size_t len = strlen(input_prompt) + strlen(input) + 1;
|
||||
char* prompt_and_input = (char*) xmalloc(len);
|
||||
strcpy(prompt_and_input, input_prompt);
|
||||
strcat(prompt_and_input, input);
|
||||
fprintf(destination, "%s\n", prompt_and_input);
|
||||
free(prompt_and_input);
|
||||
size_t len = strlen(input_prompt) + strlen(input) + 1;
|
||||
char* prompt_and_input = (char*) xmalloc(len);
|
||||
strcpy(prompt_and_input, input_prompt);
|
||||
strcat(prompt_and_input, input);
|
||||
fprintf(destination, "%s\n", prompt_and_input);
|
||||
free(prompt_and_input);
|
||||
}
|
||||
|
||||
char* get_input()
|
||||
{
|
||||
// Set up the prompt
|
||||
char input_prompt[] = "> ";
|
||||
if (!prompt)
|
||||
input_prompt[0] = '\0';
|
||||
|
||||
// Print a blank line if game.blklin tells us to.
|
||||
if (game.blklin == true)
|
||||
printf("\n");
|
||||
{
|
||||
// Set up the prompt
|
||||
char input_prompt[] = "> ";
|
||||
if (!prompt)
|
||||
input_prompt[0] = '\0';
|
||||
|
||||
char* input;
|
||||
while (true)
|
||||
{
|
||||
if (editline)
|
||||
input = linenoise(input_prompt);
|
||||
else
|
||||
{
|
||||
input = NULL;
|
||||
size_t n = 0;
|
||||
if (isatty(0))
|
||||
printf("%s", input_prompt);
|
||||
IGNORE(getline(&input, &n, stdin));
|
||||
}
|
||||
|
||||
if (input == NULL) // Got EOF; quit.
|
||||
exit(EXIT_SUCCESS);
|
||||
else if (input[0] == '#') // Ignore comments.
|
||||
continue;
|
||||
else // We have a 'normal' line; leave the loop.
|
||||
break;
|
||||
// Print a blank line if game.blklin tells us to.
|
||||
if (game.blklin == true)
|
||||
printf("\n");
|
||||
|
||||
char* input;
|
||||
while (true) {
|
||||
if (editline)
|
||||
input = linenoise(input_prompt);
|
||||
else {
|
||||
input = NULL;
|
||||
size_t n = 0;
|
||||
if (isatty(0))
|
||||
printf("%s", input_prompt);
|
||||
IGNORE(getline(&input, &n, stdin));
|
||||
}
|
||||
|
||||
if (input == NULL) // Got EOF; quit.
|
||||
exit(EXIT_SUCCESS);
|
||||
else if (input[0] == '#') // Ignore comments.
|
||||
continue;
|
||||
else // We have a 'normal' line; leave the loop.
|
||||
break;
|
||||
}
|
||||
|
||||
// Strip trailing newlines from the input
|
||||
input[strcspn(input, "\n")] = 0;
|
||||
// Strip trailing newlines from the input
|
||||
input[strcspn(input, "\n")] = 0;
|
||||
|
||||
linenoiseHistoryAdd(input);
|
||||
linenoiseHistoryAdd(input);
|
||||
|
||||
if (!isatty(0))
|
||||
echo_input(stdout, input_prompt, input);
|
||||
if (!isatty(0))
|
||||
echo_input(stdout, input_prompt, input);
|
||||
|
||||
if (logfp)
|
||||
echo_input(logfp, input_prompt, input);
|
||||
|
||||
return(input);
|
||||
if (logfp)
|
||||
echo_input(logfp, input_prompt, input);
|
||||
|
||||
return (input);
|
||||
}
|
||||
|
||||
bool YES(vocab_t question, vocab_t yes_response, vocab_t no_response)
|
||||
|
@ -259,40 +256,38 @@ bool YES(vocab_t question, vocab_t yes_response, vocab_t no_response)
|
|||
{
|
||||
char* reply;
|
||||
bool outcome;
|
||||
|
||||
|
||||
for (;;) {
|
||||
RSPEAK(question);
|
||||
RSPEAK(question);
|
||||
|
||||
reply = get_input();
|
||||
reply = get_input();
|
||||
|
||||
char* firstword = (char*) xmalloc(strlen(reply));
|
||||
sscanf(reply, "%s", firstword);
|
||||
char* firstword = (char*) xmalloc(strlen(reply));
|
||||
sscanf(reply, "%s", firstword);
|
||||
|
||||
for (int i = 0; i < (int)strlen(firstword); ++i)
|
||||
firstword[i] = tolower(firstword[i]);
|
||||
|
||||
int yes = strncmp("yes", firstword, sizeof("yes") - 1);
|
||||
int y = strncmp("y", firstword, sizeof("y") - 1);
|
||||
int no = strncmp("no", firstword, sizeof("no") - 1);
|
||||
int n = strncmp("n", firstword, sizeof("n") - 1);
|
||||
for (int i = 0; i < (int)strlen(firstword); ++i)
|
||||
firstword[i] = tolower(firstword[i]);
|
||||
|
||||
free(firstword);
|
||||
|
||||
if (yes == 0 || y == 0) {
|
||||
RSPEAK(yes_response);
|
||||
outcome = true;
|
||||
break;
|
||||
}
|
||||
else if (no == 0 || n == 0) {
|
||||
RSPEAK(no_response);
|
||||
outcome = false;
|
||||
break;
|
||||
}
|
||||
else
|
||||
RSPEAK(PLEASE_ANSWER);
|
||||
int yes = strncmp("yes", firstword, sizeof("yes") - 1);
|
||||
int y = strncmp("y", firstword, sizeof("y") - 1);
|
||||
int no = strncmp("no", firstword, sizeof("no") - 1);
|
||||
int n = strncmp("n", firstword, sizeof("n") - 1);
|
||||
|
||||
free(firstword);
|
||||
|
||||
if (yes == 0 || y == 0) {
|
||||
RSPEAK(yes_response);
|
||||
outcome = true;
|
||||
break;
|
||||
} else if (no == 0 || n == 0) {
|
||||
RSPEAK(no_response);
|
||||
outcome = false;
|
||||
break;
|
||||
} else
|
||||
RSPEAK(PLEASE_ANSWER);
|
||||
}
|
||||
linenoiseFree(reply);
|
||||
return(outcome);
|
||||
return (outcome);
|
||||
}
|
||||
|
||||
/* Line-parsing routines (GETTXT, MAKEWD, PUTTXT, SHFTXT) */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue