aboutsummaryrefslogtreecommitdiffhomepage
path: root/reader.cpp
diff options
context:
space:
mode:
authorGravatar ridiculousfish <corydoras@ridiculousfish.com>2014-01-02 12:37:50 -0800
committerGravatar ridiculousfish <corydoras@ridiculousfish.com>2014-01-02 16:19:33 -0800
commit993148552efcffb60c7e1be7aa3322f1bffa1c74 (patch)
treeefdbd68e79c93f3b25b7d69c6a7f8a6d0ff7a903 /reader.cpp
parent1863be7be43d18e5e24c2684df86d764ddb089cc (diff)
Support for Ctrl-C cancellation in new parser. Added tests for it too.
Diffstat (limited to 'reader.cpp')
-rw-r--r--reader.cpp8
1 files changed, 3 insertions, 5 deletions
diff --git a/reader.cpp b/reader.cpp
index f5ae62f4..b03b84a8 100644
--- a/reader.cpp
+++ b/reader.cpp
@@ -2068,11 +2068,9 @@ static void reader_interactive_destroy()
void reader_sanity_check()
{
- if (get_is_interactive())
+ /* Note: 'data' is non-null if we are interactive, except in the testing environment */
+ if (get_is_interactive() && data != NULL)
{
- if (!data)
- sanity_lose();
-
if (!(data->buff_pos <= data->command_length()))
sanity_lose();
@@ -2739,7 +2737,7 @@ static void reader_super_highlight_me_plenty(size_t match_highlight_pos)
bool shell_is_exiting()
{
if (get_is_interactive())
- return job_list_is_empty() && data->end_loop;
+ return job_list_is_empty() && data != NULL && data->end_loop;
else
return end_loop;
}