Index: /trunk/extsrc/gpcsw/gpcsrc/fits/burntool/burntool.c
===================================================================
--- /trunk/extsrc/gpcsw/gpcsrc/fits/burntool/burntool.c	(revision 23523)
+++ /trunk/extsrc/gpcsw/gpcsrc/fits/burntool/burntool.c	(revision 23524)
@@ -25,5 +25,4 @@
 {
    int i, j, k, nx, ny, err;
-   HeaderUnit ohu = fh_create();
    HeaderUnit ihu = fh_create();
    HeaderUnit ehu;
@@ -41,5 +40,20 @@
    CELL OTA[MAXCELL];	/* Cell structure for entire OTA */
 
+   if (argc == 1)  {
+     syntax(argv[0]);
+     exit(EXIT_SUCCESS);
+   }
+
    if(argc > 1 && strncmp(argv[1], "help", 4) == 0) {
+      syntax(argv[0]);
+      exit(EXIT_SUCCESS);
+   }
+
+   if(argc > 1 && strncmp(argv[1], "--help", 6) == 0) {
+      syntax(argv[0]);
+      exit(EXIT_SUCCESS);
+   }
+
+   if(argc > 1 && strncmp(argv[1], "-h", 6) == 0) {
       syntax(argv[0]);
       exit(EXIT_SUCCESS);
@@ -323,5 +337,5 @@
       }
 
-     if (!fh_write(ihu, outfd)) {
+     if (fh_write(ihu, outfd)) {
 	 fprintf(stderr, "\rerror: Trouble writing PHU to %s\n", ofilename);
          exit(EXIT_FAILURE);
@@ -498,5 +512,7 @@
 	 if(update) {
 	   if (ofilename) {
-	     if (!fh_write(ehu, outfd)) {
+	     fh_ehu(ehu, 0);	/* Seek back to the start of data */
+
+	     if (fh_write(ehu, outfd)) {
 	       fprintf(stderr, "\rerror: Trouble writing EXT %d to %s\n", ext, ofilename);
 	       exit(EXIT_FAILURE);
