Blob Blame History Raw
Add missing return types to avoid build failures with C99 compilers.
Include <string.h> to avoid implicit function declarations.
Avoid incompatible pointer types and a format string warning.

Partially fixed via:

commit da41e452c5acc99ffe40f48be32d9ca7e55c407c
Author: tomat <tomat@406a0c4d-033a-0410-8de8-e80135713968>
Date:   Wed Jun 2 05:16:06 2010 +0000

    fixed query buffer overrun and SIGPIPE in C API, mantis bug 489 \ 504
    
    git-svn-id: svn://svn.sphinxsearch.com/sphinx/trunk@2316 406a0c4d-033a-0410-
8de8-e80135713968

Rest submitted upstream: <https://github.com/sphinxsearch/sphinx/pull/47>

diff --git a/api/libsphinxclient/sphinxclient.c b/api/libsphinxclient/sphinxclient.c
index 16f7913fa37b3bf3..0530fc2c65f1082c 100644
--- a/api/libsphinxclient/sphinxclient.c
+++ b/api/libsphinxclient/sphinxclient.c
@@ -311,7 +311,7 @@ static void sphinx_free_results ( sphinx_client * client )
 }
 
 
-static sock_close ( int sock );
+static void sock_close ( int sock );
 
 
 #define safe_free(_ptr) \
@@ -1436,7 +1436,7 @@ static int sock_set_blocking ( int sock )
 }
 
 
-static sock_close ( int sock )
+static void sock_close ( int sock )
 {
 	if ( sock<0 )
 		return;
diff --git a/api/libsphinxclient/test.c b/api/libsphinxclient/test.c
index f779bb1ff638a179..670e379b4ad3c36f 100644
--- a/api/libsphinxclient/test.c
+++ b/api/libsphinxclient/test.c
@@ -16,6 +16,7 @@
 #include <stdarg.h>
 #include <stdio.h>
 #include <stdlib.h>
+#include <string.h>
 
 #if _WIN32
 #include <winsock2.h>
@@ -218,7 +219,8 @@ void test_excerpt_spz ( sphinx_client * client )
 
 void test_persist_work ( sphinx_client * client )
 {
-	char * docs[] = { NULL };
+	const char * docs[] = { NULL };
+	char *docs0;
 	const char words[] = "that is";
 	const char * index = "test1";
 	const char filler[] = " no need to worry about ";
@@ -229,13 +231,14 @@ void test_persist_work ( sphinx_client * client )
 
 	// should be in sync with sphinxclient.c MAX_PACKET_LEN
 	i = 8*1024*1024 + 50;
-	docs[0] = malloc ( i );
-	if ( !docs[0] )
+	docs0 = malloc ( i );
+	if ( !docs0 )
 		die ( "malloc failed at test_persist_work" );
+	docs[0] = docs0;
 
-	memcpy ( docs[0], words, sizeof(words)-1 );
-	doc = docs[0] + sizeof(words)-1;
-	while ( ( doc + sizeof(filler) )<docs[0]+i )
+	memcpy ( docs0, words, sizeof(words)-1 );
+	doc = docs0 + sizeof(words)-1;
+	while ( ( doc + sizeof(filler) )<docs0+i )
 	{
 		memcpy ( doc, filler, sizeof(filler)-1 );
 		doc += sizeof(filler)-1;
@@ -264,7 +267,7 @@ void test_persist_work ( sphinx_client * client )
 			opts.html_strip_mode = "none";
 			opts.query_mode = SPH_TRUE;
 
-			*( docs[0]+sizeof(words)+100 ) = '\0';
+			*( docs0+sizeof(words)+100 ) = '\0';
 		}
 
 		printf ( "n=%d,\t", i );
@@ -405,7 +408,7 @@ void title ( const char * name )
 	if ( g_smoke || !name )
 		return;
 
-	printf ( "-> % s <-\n\n", name );
+	printf ( "-> %s <-\n\n", name );
 }
 
 int main ( int argc, char ** argv )