aboutsummaryrefslogtreecommitdiffhomepage
path: root/builtin_complete.cpp
diff options
context:
space:
mode:
authorGravatar ridiculousfish <corydoras@ridiculousfish.com>2012-02-26 14:32:06 -0800
committerGravatar ridiculousfish <corydoras@ridiculousfish.com>2012-02-26 14:32:06 -0800
commit3553e650891db84b3feffaef872d378c750f807b (patch)
treec9a4998f931786098332bd652a4bb27c7ebeae23 /builtin_complete.cpp
parentad7c5886bc62d2d36d458b9769a6294bffb030da (diff)
Add some more locking and const correctness to completion_entry_t in preparation for supporting better multithreading
Diffstat (limited to 'builtin_complete.cpp')
-rw-r--r--builtin_complete.cpp23
1 files changed, 11 insertions, 12 deletions
diff --git a/builtin_complete.cpp b/builtin_complete.cpp
index 658ff63b..46c4a9d5 100644
--- a/builtin_complete.cpp
+++ b/builtin_complete.cpp
@@ -285,7 +285,7 @@ const wchar_t *builtin_complete_get_temporary_buffer()
static int builtin_complete( parser_t &parser, wchar_t **argv )
{
ASSERT_IS_MAIN_THREAD();
- int res=0;
+ bool res=false;
int argc=0;
int result_mode=SHARED;
int remove = 0;
@@ -308,7 +308,7 @@ static int builtin_complete( parser_t &parser, wchar_t **argv )
woptind=0;
- while( res == 0 )
+ while( ! res )
{
static const struct woption
long_options[] =
@@ -405,7 +405,7 @@ static int builtin_complete( parser_t &parser, wchar_t **argv )
builtin_print_help( parser, argv[0], stderr_buffer );
- res = 1;
+ res = true;
break;
case 'x':
@@ -436,7 +436,7 @@ static int builtin_complete( parser_t &parser, wchar_t **argv )
else
{
append_format(stderr_buffer, L"%ls: Invalid token '%ls'\n", argv[0], woptarg );
- res = 1;
+ res = true;
}
break;
}
@@ -488,7 +488,7 @@ static int builtin_complete( parser_t &parser, wchar_t **argv )
case '?':
builtin_unknown_option( parser, argv[0], argv[woptind-1] );
- res = 1;
+ res = true;
break;
}
@@ -508,7 +508,7 @@ static int builtin_complete( parser_t &parser, wchar_t **argv )
parser.test( condition, 0, &stderr_buffer, argv[0] );
- res = 1;
+ res = true;
}
}
}
@@ -526,7 +526,7 @@ static int builtin_complete( parser_t &parser, wchar_t **argv )
parser.test_args( comp, &stderr_buffer, argv[0] );
- res = 1;
+ res = true;
}
}
}
@@ -535,8 +535,6 @@ static int builtin_complete( parser_t &parser, wchar_t **argv )
{
if( do_complete )
{
- std::vector<completion_t> comp;
-
const wchar_t *token;
parse_util_token_extent( do_complete_param.c_str(), do_complete_param.size(), &token, 0, 0, 0 );
@@ -547,7 +545,8 @@ static int builtin_complete( parser_t &parser, wchar_t **argv )
if( recursion_level < 1 )
{
recursion_level++;
-
+
+ std::vector<completion_t> comp;
complete( do_complete_param, comp, COMPLETE_DEFAULT );
for( size_t i=0; i< comp.size() ; i++ )
@@ -589,7 +588,7 @@ static int builtin_complete( parser_t &parser, wchar_t **argv )
argv[0] );
builtin_print_help( parser, argv[0], stderr_buffer );
- res = 1;
+ res = true;
}
else if( cmd.empty() && path.empty() )
{
@@ -625,5 +624,5 @@ static int builtin_complete( parser_t &parser, wchar_t **argv )
}
}
- return res;
+ return res ? 1 : 0;
}