diff --git a/src/if_sniff.c b/src/if_sniff.c
index a9e9be0..5cacb72 100644
--- a/src/if_sniff.c
+++ b/src/if_sniff.c
@@ -449,7 +449,7 @@
     if (!sniff_cmd)
     {
 	struct sn_cmd_list *list = sniff_cmd_ext;
-	while(list)
+	while (list)
 	{
 	    if (!strcmp(cmd, list->sniff_cmd->cmd_name))
 	    {
@@ -479,7 +479,7 @@
 	/* unescape message text */
 	char *p = msg;
 	char *end = p+strlen(msg);
-	while(*p)
+	while (*p)
 	{
 	    if (*p == '\\')
 		mch_memmove(p,p+1,end-p);
@@ -489,7 +489,7 @@
 	SNIFF_TRACE1("request def = %s\n",def);
 	SNIFF_TRACE1("request msg = %s\n",msg);
 
-	while(list && list->next_cmd)
+	while (list && list->next_cmd)
 	    list = list->next_cmd;
 	if (!list)
 	    sniff_cmd_ext = cmd_node;
@@ -628,7 +628,7 @@
 	    gui_mch_wait_for_chars(0L);
 #endif
 #ifdef WIN32
-	while(sniffBufStart != NULL)
+	while (sniffBufStart != NULL)
 	{
 	    struct sniffBufNode *node = sniffBufStart;
 	    sniffBufStart = sniffBufStart->next;
@@ -789,7 +789,7 @@
     command   = buffer[0];
     arguments = &buffer[1];
     token = strtok(arguments, sniff_rq_sep);
-    while(argc <3)
+    while (argc <3)
     {
 	if (token)
 	{
@@ -925,7 +925,7 @@
 	default :
 	    break;
     }
-    while(argc)
+    while (argc)
 	vim_free(argv[--argc]);
 }
 
