Index: trunk/src_plugins/io_autotrax/io_autotrax.c =================================================================== --- trunk/src_plugins/io_autotrax/io_autotrax.c (revision 27372) +++ trunk/src_plugins/io_autotrax/io_autotrax.c (revision 27373) @@ -50,6 +50,9 @@ int io_autotrax_fmt(pcb_plug_io_t *ctx, pcb_plug_iot_t typ, int wr, const char *fmt) { + if (wr && (typ & PCB_IOT_FOOTPRINT)) /* no footprint write */ + return 0; + if (strcmp(ctx->description, fmt) == 0) return 200; Index: trunk/src_plugins/io_dsn/io_dsn.c =================================================================== --- trunk/src_plugins/io_dsn/io_dsn.c (revision 27372) +++ trunk/src_plugins/io_dsn/io_dsn.c (revision 27373) @@ -46,6 +46,9 @@ int io_dsn_fmt(pcb_plug_io_t *ctx, pcb_plug_iot_t typ, int wr, const char *fmt) { + if (wr && (typ & PCB_IOT_FOOTPRINT)) /* no footprint write */ + return 0; + if (strcmp(ctx->description, fmt) == 0) return 200; Index: trunk/src_plugins/io_eagle/io_eagle.c =================================================================== --- trunk/src_plugins/io_eagle/io_eagle.c (revision 27372) +++ trunk/src_plugins/io_eagle/io_eagle.c (revision 27373) @@ -40,6 +40,9 @@ int io_eagle_fmt(pcb_plug_io_t *ctx, pcb_plug_iot_t typ, int wr, const char *fmt) { + if (wr && (typ & PCB_IOT_FOOTPRINT)) /* no footprint write */ + return 0; + if (strcmp(ctx->description, fmt) == 0) return 200; Index: trunk/src_plugins/io_hyp/io_hyp.c =================================================================== --- trunk/src_plugins/io_hyp/io_hyp.c (revision 27372) +++ trunk/src_plugins/io_hyp/io_hyp.c (revision 27373) @@ -52,6 +52,9 @@ int io_hyp_fmt(pcb_plug_io_t * ctx, pcb_plug_iot_t typ, int wr, const char *fmt) { + if (wr && (typ & PCB_IOT_FOOTPRINT)) /* no footprint write */ + return 0; + if (strcmp(ctx->description, fmt) == 0) return 200; Index: trunk/src_plugins/io_mentor_cell/io_mentor_cell.c =================================================================== --- trunk/src_plugins/io_mentor_cell/io_mentor_cell.c (revision 27372) +++ trunk/src_plugins/io_mentor_cell/io_mentor_cell.c (revision 27373) @@ -38,6 +38,9 @@ int io_mentor_cell_fmt(pcb_plug_io_t *ctx, pcb_plug_iot_t typ, int wr, const char *fmt) { + if (wr && (typ & PCB_IOT_FOOTPRINT)) /* no footprint write */ + return 0; + if (strcmp(ctx->description, fmt) == 0) return 200;