Explorar el Código

write Sync and Expunge to global section if applicable

makes for leaner Channel sections.

note: the global delete and expunge variables exist so the command line
can override the config file despite the otherwise backwards behavior.
Oswald Buddenhagen hace 11 años
padre
commit
bf9d7c7695
Se han modificado 1 ficheros con 9 adiciones y 4 borrados
  1. 9 4
      src/compat/config.c

+ 9 - 4
src/compat/config.c

@@ -344,9 +344,9 @@ write_channel_parm( FILE *fp, config_t *cfg )
 		fprintf( fp, "MaxSize %d\n", cfg->max_size );
 	if (cfg->max_messages)
 		fprintf( fp, "MaxMessages %d\n", cfg->max_messages );
-	if (!cfg->delete && !delete)
-		fputs( "Sync New ReNew Flags\n", fp );
-	if (cfg->expunge || expunge)
+	if (cfg->delete && !global.delete && !delete)
+		fputs( "Sync All\n", fp );
+	if (cfg->expunge && !global.expunge && !expunge)
 		fputs( "Expunge Both\n", fp );
 	fputc( '\n', fp );
 }
@@ -373,7 +373,12 @@ write_config( int fd )
 		return;
 	}
 
-	fprintf( fp, "SyncState *\n\n" );
+	fputs( "SyncState *\n", fp );
+	if (!global.delete && !delete)
+		fputs( "Sync New ReNew Flags\n", fp );
+	if (global.expunge || expunge)
+		fputs( "Expunge Both\n", fp );
+	fputc( '\n', fp );
 	if (local_home || o2o)
 		fprintf( fp, "MaildirStore local\nPath \"%s/\"\nInbox \"%s/INBOX\"\nAltMap %s\n\n",
 		         maildir, maildir, tb( altmap > 0 ) );