diff --git ioq3-r1509/code/qcommon/cmd.c wait/code/qcommon/cmd.c
index 8b14c2a..1da9a22 100644
--- ioq3-r1509/code/qcommon/cmd.c
+++ wait/code/qcommon/cmd.c
@@ -50,10 +50,29 @@ bind g "cmd use rocket ; +attack ; wait ; -attack ; cmd use blaster"
 ============
 */
 void Cmd_Wait_f( void ) {
-	if ( Cmd_Argc() == 2 ) {
-		cmd_wait = atoi( Cmd_Argv( 1 ) );
-	} else {
+	char *end;
+	if( Cmd_Argc() < 2 )
+	{
 		cmd_wait = 1;
+		return;
+	}
+	cmd_wait = strtol( Cmd_Args(), &end, 10 );
+	if( *end )
+	{
+		// argument was not (entirely) a number
+		cmd_wait = 0;
+		Com_Printf( "usage: wait [number of frames]\n" );
+		return;
+	}
+	if( cmd_wait < 0 )
+	{
+#ifdef KILLJOY
+		Com_Printf( "wait: argument must be positive\n" );
+#else
+		Com_Printf( "wait: flux capacitor inoperable\n" );
+#endif
+		cmd_wait = 0;
+		return;
 	}
 }