]> git.mxchange.org Git - simgear.git/commitdiff
cppbind: fix problem with function call without arguments.
authorThomas Geymayer <tomgey@gmail.com>
Sat, 22 Mar 2014 12:23:21 +0000 (13:23 +0100)
committerThomas Geymayer <tomgey@gmail.com>
Sat, 22 Mar 2014 12:23:21 +0000 (13:23 +0100)
simgear/nasal/cppbind/detail/from_nasal_function_templates.hxx

index 6b788122c7e59aac9ea306f1c536d7156f97706d..83f1216b6c4c75a6065387169cb711f3b182b84d 100644 (file)
                    BOOST_PP_ENUM_TRAILING(n, SG_CALL_TRAITS_PARAM, 0) )
   {
     naContext ctx = naNewContext();
-    naRef args[] = {
+#if n
+    naRef args[n] = {
       BOOST_PP_ENUM(n, SG_CALL_ARG, 0)
     };
-    const int num_args = sizeof(args)/sizeof(args[0]);
+#else
+    naRef* args = NULL;
+#endif
 
     naRef result =
-      naCallMethodCtx(ctx, holder->get_naRef(), self, num_args, args, naNil());
+      naCallMethodCtx(ctx, holder->get_naRef(), self, n, args, naNil());
 
     const char* error = naGetError(ctx);
     std::string error_str(error ? error : "");