--- gphoto-0.4.3/src/commandline.c.noopt	Wed Aug 16 11:42:14 2000
+++ gphoto-0.4.3/src/commandline.c	Wed Aug 16 11:43:59 2000
@@ -62,17 +62,21 @@
     int i = 0;
     struct Image *im;
     FILE *fp;
+    int did_anything = 0;
 
     if (strcmp(argv[1], "-h") == 0) {
+	did_anything = 1;
 	command_usage();
     }
     i = 1;
     while (i < argc) {
 	switch (argv[i][1]) {
 	case 'n':
+	    did_anything = 1;
 	    fprintf(stdout, "%i\n", (*Camera->number_of_pictures) ());
 	    break;
 	case 'l':
+	    did_anything = 1;
 	    if (argv[i + 1]) {
 		if ((im = (*Camera->get_preview) ()) == 0)
 		    fprintf(stdout, "ERROR: could not get image.\n");
@@ -90,6 +94,7 @@
 	    i += 1;
 	    break;
 	case 's':
+	    did_anything = 1;
 	    if (argv[i + 1] && argv[i + 2]) {
 		fprintf(stdout,
 			"Saving image %i from camera as %s: ",
@@ -120,6 +125,7 @@
 	    i += 2;
 	    break;
 	case 't':
+	    did_anything = 1;
 	    if (argv[i + 1] && argv[i + 2]) {
 		fprintf(stdout,
 			"Saving thumbnail image %i from camera as %s: ",
@@ -148,6 +154,7 @@
 	    i += 2;
 	    break;
 	case 'd':
+	    did_anything = 1;
 	    if (argv[i + 1]) {
 		if (((*Camera->delete_picture) (atoi(argv[i + 1]))
 		     == 0)) {
@@ -165,6 +172,7 @@
 	    i += 1;
 	    break;
 	case 'p':
+	    did_anything = 1;
 	    if (!argv[i + 1]) {
 		fprintf(stdout, "ERROR: filename not specified.\n");
 		command_usage();
@@ -201,6 +209,7 @@
 	    fflush(stdout);
 	    break;
 	case 'c':
+	    did_anything = 1;
 	    camera_summary();
 	    break;
 	default:
@@ -209,5 +218,6 @@
 	i++;
     }
     fflush(stdout);
-    _exit(0);
+    if (did_anything)
+	_exit(0);
 }
--- gphoto-0.4.3/src/main.c.noopt	Wed Aug 16 11:46:51 2000
+++ gphoto-0.4.3/src/main.c	Wed Aug 16 11:47:10 2000
@@ -122,8 +122,8 @@
 	    has_rc = load_config();
 	    set_camera(camera_model);
 	    command_line(argc, argv);
-	} else
-	    command_line_mode = 0;
+	}
+	command_line_mode = 0;
 
 	fprintf(stdout,
 		"gPhoto %s (%s) - the GNU digital camera application\n",
