summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/core.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/core.c b/src/core.c
index 0aa8559..d37b1a4 100644
--- a/src/core.c
+++ b/src/core.c
@@ -3746,13 +3746,13 @@ Get buffer as string
int lcoreGetBufferAsString( lua_State* L ) {
Buffer* buffer = uluaGetBuffer( L, 1 );
- size_t size = buffer->size * getBufferElementSize( buffer ) + 1;
- char* str = malloc( size );
+ size_t size = buffer->size * getBufferElementSize( buffer );
+ char* str = malloc( size + 1 );
- memset( str, 0, size );
- memcpy( str, buffer->data, size - 1 );
+ memset( str, 0, size + 1 );
+ memcpy( str, buffer->data, size );
- lua_pushstring( L, buffer->data );
+ lua_pushstring( L, str );
free( str );