File tree Expand file tree Collapse file tree 2 files changed +13
-7
lines changed Expand file tree Collapse file tree 2 files changed +13
-7
lines changed Original file line number Diff line number Diff line change @@ -66,15 +66,23 @@ DELCARE_HANDLER(print) {
66
66
{
67
67
if (jerry_value_is_string (args_p [cc ]))
68
68
{
69
- static char buffer [128 ];
70
- jerry_size_t size , maxsize ;
71
- size = jerry_get_string_size (args_p [0 ]);
72
- maxsize = MIN (size , 126 );
69
+ char * buffer ;
70
+ jerry_size_t size = jerry_get_string_size (args_p [0 ]);
71
+ buffer = (char * ) malloc (size + 1 );
72
+
73
+ if (!buffer )
74
+ {
75
+ // not enough memory for this string.
76
+ printf ("[<too-long-string>]" );
77
+ continue ;
78
+ }
79
+
73
80
jerry_string_to_char_buffer (args_p [cc ],
74
81
(jerry_char_t * ) buffer ,
75
- maxsize );
82
+ size );
76
83
* (buffer + size ) = 0 ;
77
84
printf ("[%s] " , buffer );
85
+ free (buffer );
78
86
}
79
87
else
80
88
{
Original file line number Diff line number Diff line change @@ -106,8 +106,6 @@ int js_loop (uint32_t ticknow)
106
106
ret_code = -3 ;
107
107
}
108
108
109
- free (val_args );
110
-
111
109
jerry_release_value (res );
112
110
jerry_release_value (sysloop_func );
113
111
jerry_release_value (global_obj_val );
You can’t perform that action at this time.
0 commit comments