[cloudy] Updated macros
Sergio Pascual
sergiopr at fedoraproject.org
Wed Jan 22 19:09:12 UTC 2014
commit 9c12d5439860311d22776dcd6f9aad1512df8b50
Author: Sergio Pascual <sergiopr at fis.ucm.es>
Date: Wed Jan 22 20:09:25 2014 +0100
Updated macros
- Fix bz #1037017, format security error
cloudy-fmterr.patch | 1375 +++++++++++++++++++++++++++++++++++++++++++++++++++
cloudy.spec | 25 +-
2 files changed, 1384 insertions(+), 16 deletions(-)
---
diff --git a/cloudy-fmterr.patch b/cloudy-fmterr.patch
new file mode 100644
index 0000000..4d0417c
--- /dev/null
+++ b/cloudy-fmterr.patch
@@ -0,0 +1,1375 @@
+diff -ur c08.00/source/cont_gammas.cpp c08.00.fmterr/source/cont_gammas.cpp
+--- c08.00/source/cont_gammas.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/cont_gammas.cpp 2014-01-22 19:39:48.299357386 +0100
+@@ -275,13 +275,13 @@
+ }
+
+ fprintf( ioFILE, " GammaPrt %.2f from ",fnzone);
+- fprintf( ioFILE,PrintEfmt("%9.2e",rfield.anu[ipLoEnr-1]));
++ fprintf( ioFILE,"%s", PrintEfmt("%9.2e",rfield.anu[ipLoEnr-1]));
+ fprintf( ioFILE, " to ");
+- fprintf( ioFILE,PrintEfmt("%9.2e",rfield.anu[ipHiEnr-1]));
++ fprintf( ioFILE,"%s", PrintEfmt("%9.2e",rfield.anu[ipHiEnr-1]));
+ fprintf( ioFILE, "R rates >");
+- fprintf( ioFILE,PrintEfmt("%9.2e",threshold));
++ fprintf( ioFILE,"%s", PrintEfmt("%9.2e",threshold));
+ fprintf( ioFILE, " of total=");
+- fprintf( ioFILE,PrintEfmt("%9.2e",total));
++ fprintf( ioFILE,"%s", PrintEfmt("%9.2e",total));
+ fprintf( ioFILE, " (frac inc, otslin, otscon, ConInterOut, outlin ConOTS_local_OTS_rate ) chL, C\n");
+
+ if( threshold <= 0. || total <= 0. )
+@@ -304,8 +304,8 @@
+
+ /* this really is array index on C scale */
+ fprintf( ioFILE, "[%5ld]" , i );
+- fprintf( ioFILE, PrintEfmt("%9.2e",rfield.anu[i]));
+- fprintf( ioFILE, PrintEfmt("%9.2e",phisig/total));
++ fprintf( ioFILE, "%s", PrintEfmt("%9.2e",rfield.anu[i]));
++ fprintf( ioFILE, "%s", PrintEfmt("%9.2e",phisig/total));
+ fprintf( ioFILE, "%5.2f%5.2f%5.2f%5.2f%5.2f%5.2f %4.4s %4.4s %.2e \n",
+ rfield.flux[i]/SDIV(flxcor),
+ rfield.otslin[i]/SDIV(flxcor),
+@@ -329,8 +329,8 @@
+ rfield.outlin[i] + rfield.outlin_noplot[i] +rfield.ConInterOut[i]*rfield.lgOutOnly;
+
+ fprintf( ioFILE, "%5ld", i );
+- fprintf(ioFILE,PrintEfmt("%9.2e",rfield.anu[i]));
+- fprintf(ioFILE,PrintEfmt("%9.2e",phisig/total));
++ fprintf(ioFILE,"%s", PrintEfmt("%9.2e",rfield.anu[i]));
++ fprintf(ioFILE,"%s", PrintEfmt("%9.2e",phisig/total));
+ fprintf( ioFILE, "%5.2f%5.2f%5.2f%5.2f%5.2f%5.2f %4.4s %4.4s %.2e \n",
+ rfield.flux[i]/SDIV(flxcor),
+ rfield.otslin[i]/SDIV(flxcor),
+Sólo en c08.00.fmterr/source: dum
+diff -ur c08.00/source/hydrolevel.cpp c08.00.fmterr/source/hydrolevel.cpp
+--- c08.00/source/hydrolevel.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/hydrolevel.cpp 2014-01-22 19:40:19.994634031 +0100
+@@ -106,7 +106,7 @@
+ fprintf( ioQQQ, " A*esc" );
+ for( ipLo=ipH1s; ipLo < ipHi; ipLo++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Aul*
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Aul*
+ Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Pesc ));
+ }
+ fprintf( ioQQQ, "\n" );
+@@ -115,7 +115,7 @@
+ fprintf( ioQQQ, " A*ees" );
+ for( ipLo=ipH1s; ipLo < ipHi; ipLo++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Aul*
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Aul*
+ Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Pelec_esc ));
+ }
+ fprintf( ioQQQ, "\n" );
+@@ -124,7 +124,7 @@
+ fprintf( ioQQQ, " tauin" );
+ for( ipLo=ipH1s; ipLo < ipHi; ipLo++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->TauIn ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->TauIn ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -132,7 +132,7 @@
+ fprintf( ioQQQ, " t tot" );
+ for( ipLo=ipH1s; ipLo < ipHi; ipLo++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->TauTot ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->TauTot ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -140,7 +140,7 @@
+ fprintf( ioQQQ, " Esc " );
+ for( ipLo=ipH1s; ipLo < ipHi; ipLo++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Pesc ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Pesc ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -148,7 +148,7 @@
+ fprintf( ioQQQ, " Eesc " );
+ for( ipLo=ipH1s; ipLo < ipHi; ipLo++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Pelec_esc ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Pelec_esc ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -156,7 +156,7 @@
+ fprintf( ioQQQ, " Dest " );
+ for( ipLo=ipH1s; ipLo < ipHi; ipLo++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Pdest) );
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Pdest) );
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -164,7 +164,7 @@
+ fprintf( ioQQQ, " A*dst" );
+ for( ipLo=ipH1s; ipLo < ipHi; ipLo++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Aul*
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Aul*
+ Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->Pdest ));
+ }
+ fprintf( ioQQQ, "\n" );
+@@ -173,7 +173,7 @@
+ fprintf( ioQQQ, " StrkE" );
+ for( ipLo=ipH1s; ipLo < ipHi; ipLo++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e", iso.pestrk[ipH_LIKE][nelem][ipLo][ipHi] ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", iso.pestrk[ipH_LIKE][nelem][ipLo][ipHi] ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -181,7 +181,7 @@
+ fprintf( ioQQQ, " B(ul)" );
+ for( ipLo=ipH1s; ipLo < ipHi; ipLo++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->pump*
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->pump*
+ StatesElem[ipH_LIKE][nelem][ipLo].g/StatesElem[ipH_LIKE][nelem][ipHi].g ));
+ }
+ fprintf( ioQQQ, "\n" );
+@@ -190,7 +190,7 @@
+ fprintf( ioQQQ, " tcont" );
+ for( ipLo=ipH1s; ipLo < ipHi; ipLo++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->TauCon ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->TauCon ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -198,7 +198,7 @@
+ fprintf( ioQQQ, " C(ul)" );
+ for( ipLo=ipH1s; ipLo < ipHi; ipLo++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e",
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e",
+ Transitions[ipH_LIKE][nelem][ipHi][ipLo].Coll.ColUL*dense.eden ));
+ }
+ fprintf( ioQQQ, "\n" );
+@@ -206,7 +206,7 @@
+ if( ipHi == 2 )
+ {
+ fprintf( ioQQQ, " FeIIo");
+- fprintf( ioQQQ,PrintEfmt("%9.2e",
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e",
+ hydro.dstfe2lya* Transitions[ipH_LIKE][ipHYDROGEN][ipH2p][ipH1s].Emis->Aul ));
+ fprintf( ioQQQ, "\n");
+ }
+@@ -267,7 +267,7 @@
+ /* 06 aug 28, from numLevels_max to _local. */
+ for( i=ipH2s; i < iso.numLevels_local[ipISO][nelem]; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", iso.gamnc[ipISO][nelem][i] ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", iso.gamnc[ipISO][nelem][i] ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -275,17 +275,17 @@
+ /* 06 aug 28, from numLevels_max to _local. */
+ for( i=1; i < iso.numLevels_local[ipISO][nelem]; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", iso.RateCont2Level[ipISO][nelem][i]/dense.eden ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", iso.RateCont2Level[ipISO][nelem][i]/dense.eden ));
+ }
+ fprintf( ioQQQ," tot");
+- fprintf( ioQQQ,PrintEfmt("%10.2e", ionbal.RateRecomTot[nelem][nelem-ipISO]/dense.eden ) );
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.2e", ionbal.RateRecomTot[nelem][nelem-ipISO]/dense.eden ) );
+ fprintf( ioQQQ, "\n" );
+
+ fprintf( ioQQQ, " HLEV IND Rc" );
+ /* 06 aug 28, from numLevels_max to _local. */
+ for( i=ipH1s; i < iso.numLevels_local[ipISO][nelem]; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", iso.RecomInducRate[ipISO][nelem][i]*iso.PopLTE[ipISO][nelem][i] ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", iso.RecomInducRate[ipISO][nelem][i]*iso.PopLTE[ipISO][nelem][i] ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -294,7 +294,7 @@
+ /* 06 aug 28, from numLevels_max to _local. */
+ for( i=ipH1s; i < iso.numLevels_local[ipISO][nelem]; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e",
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",
+ iso.gamnc[ipISO][nelem][i]*iso.PopLTE[ipISO][nelem][i] ));
+ }
+ fprintf( ioQQQ, "\n" );
+@@ -304,7 +304,7 @@
+ /* 06 aug 28, from numLevels_max to _local. */
+ for( i=ipH1s; i < iso.numLevels_local[ipISO][nelem]; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", iso.PopLTE[ipISO][nelem][i] ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", iso.PopLTE[ipISO][nelem][i] ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -313,7 +313,7 @@
+ /* 06 aug 28, from numLevels_max to _local. */
+ for( i=ipH1s; i < iso.numLevels_local[ipISO][nelem]; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e",
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",
+ iso.ColIoniz[ipISO][nelem][i]*
+ StatesElem[ipISO][nelem][i].Pop*collider/MAX2(1e-30,iso.RateLevel2Cont[ipISO][nelem][i]) ) );
+ }
+@@ -326,7 +326,7 @@
+ /* 06 aug 28, from numLevels_max to _local. */
+ for( i=ipH1s; i < iso.numLevels_local[ipISO][nelem]; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e",
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",
+ iso.gamnc[ipISO][nelem][i]*StatesElem[ipISO][ipHYDROGEN][i].Pop/MAX2(1e-30,iso.RateLevel2Cont[ipISO][nelem][i]) ) );
+ }
+ fprintf( ioQQQ, "\n" );
+@@ -336,7 +336,7 @@
+ /* 06 aug 28, from numLevels_max to _local. */
+ for( i=ipH1s; i < iso.numLevels_local[ipISO][nelem]; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", StatesElem[ipISO][nelem][i].Pop ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", StatesElem[ipISO][nelem][i].Pop ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -344,14 +344,14 @@
+ /* 06 aug 28, from numLevels_max to _local. */
+ for( i=ipH1s; i < iso.numLevels_local[ipISO][nelem]; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", iso.DepartCoef[ipISO][nelem][i] ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", iso.DepartCoef[ipISO][nelem][i] ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+ fprintf( ioQQQ, " HLEV X12tot");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", secondaries.x12tot ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", secondaries.x12tot ));
+ fprintf( ioQQQ," Grn dest:");
+- fprintf(ioQQQ,PrintEfmt("%9.2e",
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",
+ ionbal.RateIonizTot[nelem][nelem] ));
+ fprintf(ioQQQ, "\n");
+ }
+diff -ur c08.00/source/iso_collide.cpp c08.00.fmterr/source/iso_collide.cpp
+--- c08.00/source/iso_collide.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/iso_collide.cpp 2014-01-22 19:40:47.450873353 +0100
+@@ -395,7 +395,7 @@
+ fprintf( ioQQQ, " %li\t", ipHi );
+ for( ipLo=0; ipLo < ipHi; ipLo++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%10.3e", Transitions[ipISO][nelem][ipHi][ipLo].Coll.ColUL ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", Transitions[ipISO][nelem][ipHi][ipLo].Coll.ColUL ));
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+@@ -403,21 +403,21 @@
+ fprintf( ioQQQ, " iso_collide: %s Z=%li collisional ionization coefficients\n", iso.chISO[ipISO], nelem + 1 );
+ for( ipHi=0; ipHi < iso.numLevels_max[ipISO][nelem]; ipHi++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%10.3e", iso.ColIoniz[ipISO][nelem][ipHi] ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", iso.ColIoniz[ipISO][nelem][ipHi] ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+ fprintf( ioQQQ, " iso_collide: %s Z=%li continuum boltzmann factor\n", iso.chISO[ipISO], nelem + 1 );
+ for( ipHi=0; ipHi < iso.numLevels_max[ipISO][nelem]; ipHi++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%10.3e", StatesElem[ipISO][nelem][ipHi].ConBoltz ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", StatesElem[ipISO][nelem][ipHi].ConBoltz ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+ fprintf( ioQQQ, " iso_collide: %s Z=%li continuum boltzmann factor\n", iso.chISO[ipISO], nelem + 1 );
+ for( ipHi=0; ipHi < iso.numLevels_max[ipISO][nelem]; ipHi++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%10.3e", iso.PopLTE[ipISO][nelem][ipHi] ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", iso.PopLTE[ipISO][nelem][ipHi] ));
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+diff -ur c08.00/source/iso_level.cpp c08.00.fmterr/source/iso_level.cpp
+--- c08.00/source/iso_level.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/iso_level.cpp 2014-01-22 19:41:21.675171276 +0100
+@@ -602,7 +602,7 @@
+ fprintf( ioQQQ, " level pop are:\n" );
+ for( i=0; i < numlevels_local; i++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%8.1e", StatesElem[ipISO][nelem][i].Pop ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%8.1e", StatesElem[ipISO][nelem][i].Pop ));
+ if( (i!=0) && !(i%10) ) fprintf( ioQQQ,"\n" );
+ }
+ fprintf( ioQQQ, "\n" );
+diff -ur c08.00/source/iso_photo.cpp c08.00.fmterr/source/iso_photo.cpp
+--- c08.00/source/iso_photo.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/iso_photo.cpp 2014-01-22 19:41:14.699110583 +0100
+@@ -171,11 +171,11 @@
+ if( trace.lgTrace )
+ {
+ fprintf( ioQQQ, " iso_photo, ipISO%2ld nelem%2ld low, hi=",ipISO,nelem);
+- fprintf( ioQQQ,PrintEfmt("%9.2e", iso.gamnc[ipISO][nelem][ipH1s]));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", iso.gamnc[ipISO][nelem][ipH1s]));
+ ASSERT(nelem>=ipISO);
+- fprintf( ioQQQ,PrintEfmt("%9.2e", ionbal.CompRecoilIonRate[nelem][nelem-ipISO]));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", ionbal.CompRecoilIonRate[nelem][nelem-ipISO]));
+ fprintf( ioQQQ, " total=");
+- fprintf( ioQQQ,PrintEfmt("%9.2e",iso.gamnc[ipISO][nelem][ipH1s] ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e",iso.gamnc[ipISO][nelem][ipH1s] ));
+ fprintf( ioQQQ, "\n");
+ }
+ return;
+diff -ur c08.00/source/iso_radiative_recomb.cpp c08.00.fmterr/source/iso_radiative_recomb.cpp
+--- c08.00/source/iso_radiative_recomb.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/iso_radiative_recomb.cpp 2014-01-22 19:41:40.667336424 +0100
+@@ -347,7 +347,7 @@
+ fprintf( ioQQQ, " iso_radiative_recomb recomb effic" );
+ for( ipLevel=0; ipLevel < iso.numLevels_local[ipISO][nelem]; ipLevel++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%10.3e", iso.RadRecomb[ipISO][nelem][ipLevel][ipRecEsc] ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", iso.RadRecomb[ipISO][nelem][ipLevel][ipRecEsc] ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -355,7 +355,7 @@
+ fprintf( ioQQQ, " iso_radiative_recomb recomb net effic" );
+ for( ipLevel=0; ipLevel < iso.numLevels_local[ipISO][nelem]; ipLevel++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%10.3e", iso.RadRecomb[ipISO][nelem][ipLevel][ipRecNetEsc]) );
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", iso.RadRecomb[ipISO][nelem][ipLevel][ipRecNetEsc]) );
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -363,7 +363,7 @@
+ fprintf( ioQQQ, " iso_radiative_recomb in optic dep" );
+ for( ipLevel=0; ipLevel < iso.numLevels_local[ipISO][nelem]; ipLevel++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%10.3e", opac.TauAbsGeo[0][iso.ipIsoLevNIonCon[ipISO][nelem][ipLevel]-1] ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", opac.TauAbsGeo[0][iso.ipIsoLevNIonCon[ipISO][nelem][ipLevel]-1] ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -371,7 +371,7 @@
+ fprintf( ioQQQ, " iso_radiative_recomb out op depth" );
+ for( ipLevel=0; ipLevel < iso.numLevels_local[ipISO][nelem]; ipLevel++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%10.3e", opac.TauAbsGeo[1][iso.ipIsoLevNIonCon[ipISO][nelem][ipLevel]-1] ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", opac.TauAbsGeo[1][iso.ipIsoLevNIonCon[ipISO][nelem][ipLevel]-1] ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -379,7 +379,7 @@
+ fprintf( ioQQQ, " iso_radiative_recomb rad rec coef " );
+ for( ipLevel=0; ipLevel < iso.numLevels_local[ipISO][nelem]; ipLevel++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%10.3e", iso.RadRecomb[ipISO][nelem][ipLevel][ipRecRad]) );
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", iso.RadRecomb[ipISO][nelem][ipLevel][ipRecRad]) );
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+@@ -387,12 +387,12 @@
+ if( trace.lgTrace )
+ {
+ fprintf( ioQQQ, " iso_radiative_recomb total rec coef" );
+- fprintf( ioQQQ,PrintEfmt("%10.3e", iso.RadRec_effec[ipISO][nelem] ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", iso.RadRec_effec[ipISO][nelem] ));
+ fprintf( ioQQQ, " case A=" );
+- fprintf( ioQQQ,PrintEfmt("%10.3e",
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e",
+ iso.RadRec_caseB[ipISO][nelem] + iso.RadRecomb[ipISO][nelem][ipH1s][ipRecRad] ) );
+ fprintf( ioQQQ, " case B=");
+- fprintf( ioQQQ,PrintEfmt("%10.3e", iso.RadRec_caseB[ipISO][nelem] ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", iso.RadRec_caseB[ipISO][nelem] ));
+ fprintf( ioQQQ, "\n" );
+ }
+
+@@ -430,7 +430,7 @@
+ /* this prints Z on physical, not C, scale */
+ fprintf( punch.ioRecom, "%s %s %2li ",
+ iso.chISO[ipISO], elementnames.chElementSym[nelem], nelem+1 );
+- fprintf( punch.ioRecom,PrintEfmt("%9.2e", iso.RadRec_caseB[ipISO][nelem] ));
++ fprintf( punch.ioRecom,"%s", PrintEfmt("%9.2e", iso.RadRec_caseB[ipISO][nelem] ));
+ fprintf( punch.ioRecom, "\n" );
+ }
+
+Sólo en c08.00.fmterr/source: Makefile.dep
+diff -ur c08.00/source/mean.cpp c08.00.fmterr/source/mean.cpp
+--- c08.00/source/mean.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/mean.cpp 2014-01-22 19:41:55.419464618 +0100
+@@ -686,7 +686,7 @@
+ {
+ /*fprintf( ioQQQ, "%11.3e", raver[i] );*/
+ fprintf( ioQQQ, " ");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", raver[i] ) );
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", raver[i] ) );
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -698,7 +698,7 @@
+ {
+ /*fprintf( ioQQQ, "%11.3e", vaver[i] );*/
+ fprintf( ioQQQ, " ");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", vaver[i] ) );
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", vaver[i] ) );
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+diff -ur c08.00/source/mole_h2_io.cpp c08.00.fmterr/source/mole_h2_io.cpp
+--- c08.00/source/mole_h2_io.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/mole_h2_io.cpp 2014-01-22 19:42:17.388655396 +0100
+@@ -426,24 +426,24 @@
+ DEBUG_ENTRY( "H2_Prt_Zone()" );
+
+ fprintf( ioQQQ, " H2 density ");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", hmi.H2_total));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", hmi.H2_total));
+
+ fprintf( ioQQQ, " orth/par");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", h2.ortho_density / SDIV( h2.para_density )));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", h2.ortho_density / SDIV( h2.para_density )));
+
+ iElecHi = 0;
+ iVibHi = 0;
+ fprintf( ioQQQ, " v0 J=0,3");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", H2_populations[iElecHi][iVibHi][0] / hmi.H2_total));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", H2_populations[iElecHi][iVibHi][1] / hmi.H2_total));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", H2_populations[iElecHi][iVibHi][2] / hmi.H2_total));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", H2_populations[iElecHi][iVibHi][3] / hmi.H2_total));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", H2_populations[iElecHi][iVibHi][0] / hmi.H2_total));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", H2_populations[iElecHi][iVibHi][1] / hmi.H2_total));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", H2_populations[iElecHi][iVibHi][2] / hmi.H2_total));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", H2_populations[iElecHi][iVibHi][3] / hmi.H2_total));
+
+ fprintf( ioQQQ, " TOTv=0,3");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", pops_per_vib[iElecHi][0] / hmi.H2_total));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", pops_per_vib[iElecHi][1] / hmi.H2_total));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", pops_per_vib[iElecHi][2] / hmi.H2_total));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", pops_per_vib[iElecHi][3] / hmi.H2_total));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", pops_per_vib[iElecHi][0] / hmi.H2_total));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", pops_per_vib[iElecHi][1] / hmi.H2_total));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", pops_per_vib[iElecHi][2] / hmi.H2_total));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", pops_per_vib[iElecHi][3] / hmi.H2_total));
+ fprintf( ioQQQ, "\n");
+ return;
+ }
+@@ -481,10 +481,10 @@
+
+ # if 0
+ fprintf( ioMEAN, " v=0,3");
+- fprintf(ioMEAN,PrintEfmt("%9.2e", pops_per_vib[iElecHi][0] / hmi.H2_total));
+- fprintf(ioMEAN,PrintEfmt("%9.2e", pops_per_vib[iElecHi][1] / hmi.H2_total));
+- fprintf(ioMEAN,PrintEfmt("%9.2e", pops_per_vib[iElecHi][2] / hmi.H2_total));
+- fprintf(ioMEAN,PrintEfmt("%9.2e", pops_per_vib[iElecHi][3] / hmi.H2_total));
++ fprintf(ioMEAN,"%s", PrintEfmt("%9.2e", pops_per_vib[iElecHi][0] / hmi.H2_total));
++ fprintf(ioMEAN,"%s", PrintEfmt("%9.2e", pops_per_vib[iElecHi][1] / hmi.H2_total));
++ fprintf(ioMEAN,"%s", PrintEfmt("%9.2e", pops_per_vib[iElecHi][2] / hmi.H2_total));
++ fprintf(ioMEAN,"%s", PrintEfmt("%9.2e", pops_per_vib[iElecHi][3] / hmi.H2_total));
+ fprintf( ioMEAN, "\n");
+ # endif
+ return;
+diff -ur c08.00/source/parse_set.cpp c08.00.fmterr/source/parse_set.cpp
+--- c08.00/source/parse_set.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/parse_set.cpp 2014-01-22 19:56:52.404993054 +0100
+@@ -1663,7 +1663,7 @@
+ else
+ {
+ /* usual case, simply copy what is in quotes */
+- sprintf(punch.chHashString , chString_quotes_lowercase );
++ sprintf(punch.chHashString , "%s", chString_quotes_lowercase );
+ }
+ }
+
+diff -ur c08.00/source/prt_alltau.cpp c08.00.fmterr/source/prt_alltau.cpp
+--- c08.00/source/prt_alltau.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/prt_alltau.cpp 2014-01-22 19:42:36.107817830 +0100
+@@ -47,15 +47,15 @@
+ /* R(1300) is Rayleigh scattering */
+ fprintf( ioQQQ, "\n Contin Optical Depths: COMP:");
+
+- fprintf( ioQQQ,PrintEfmt("%9.2e", opac.telec));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", opac.telec));
+ fprintf( ioQQQ, " H-:");
+- fprintf( ioQQQ,PrintEfmt("%9.2e",opac.thmin ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e",opac.thmin ));
+
+ fprintf( ioQQQ, " R(1300):");
+- fprintf( ioQQQ,PrintEfmt("%9.2e", colden.colden[ipCOL_H0]*6.71e-24));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", colden.colden[ipCOL_H0]*6.71e-24));
+
+ fprintf( ioQQQ, " H2+:");
+- fprintf( ioQQQ,PrintEfmt("%9.2e", colden.colden[ipCOL_H2p]*7e-18));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", colden.colden[ipCOL_H2p]*7e-18));
+
+ fprintf( ioQQQ, " Pfa:");
+ /* 06 aug 28, from numLevels_max to _local. */
+@@ -74,7 +74,7 @@
+ /* 06 aug 28, from numLevels_max to _local. */
+ if( iso.numLevels_local[ipH_LIKE][ipHYDROGEN] > ipH4p )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e", opac.TauTotalGeo[0][Transitions[ipH_LIKE][ipHYDROGEN][ipH4p][ipH3s].ipCont-1]/fcon));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", opac.TauTotalGeo[0][Transitions[ipH_LIKE][ipHYDROGEN][ipH4p][ipH3s].ipCont-1]/fcon));
+ }
+ else
+ {
+@@ -85,7 +85,7 @@
+ /* 06 aug 28, from numLevels_max to _local. */
+ if( iso.numLevels_local[ipH_LIKE][ipHYDROGEN] > 3 )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e", opac.TauTotalGeo[0][Transitions[ipH_LIKE][ipHYDROGEN][ipH3p][ipH2s].ipCont-1]/fcon));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", opac.TauTotalGeo[0][Transitions[ipH_LIKE][ipHYDROGEN][ipH3p][ipH2s].ipCont-1]/fcon));
+ }
+ else
+ {
+@@ -96,7 +96,7 @@
+ /* 06 aug 28, from numLevels_max to _local. */
+ if( iso.numLevels_local[ipH_LIKE][ipHYDROGEN] > 4 )
+ {
+- fprintf( ioQQQ,PrintEfmt("%9.2e", opac.TauTotalGeo[0][Transitions[ipH_LIKE][ipHYDROGEN][ipH4p][ipH2s].ipCont-1]/fcon));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", opac.TauTotalGeo[0][Transitions[ipH_LIKE][ipHYDROGEN][ipH4p][ipH2s].ipCont-1]/fcon));
+ }
+ else
+ {
+@@ -104,7 +104,7 @@
+ }
+
+ fprintf( ioQQQ, " La:");
+- fprintf( ioQQQ,PrintEfmt("%9.2e", opac.TauTotalGeo[0][Transitions[ipH_LIKE][ipHYDROGEN][ipH2p][ipH1s].ipCont-1]/fcon));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", opac.TauTotalGeo[0][Transitions[ipH_LIKE][ipHYDROGEN][ipH2p][ipH1s].ipCont-1]/fcon));
+
+ fprintf( ioQQQ, " 1r:");
+ PrintE93( ioQQQ , opac.TauTotalGeo[0][iso.ipIsoLevNIonCon[ipH_LIKE][ipHYDROGEN][ipH1s]-1]/fcon);
+@@ -144,7 +144,7 @@
+ /* this, combined with "continue" above, ensures that we print
+ * 1 (1s), 2(tot 2), then 3 */
+ fprintf( ioQQQ , "%6ld",MAX2(1,n));
+- fprintf( ioQQQ,PrintEfmt("%9.2e", opac.TauAbsGeo[i][iso.ipIsoLevNIonCon[ipH_LIKE][nelem][n]-1]/fcon));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", opac.TauAbsGeo[i][iso.ipIsoLevNIonCon[ipH_LIKE][nelem][n]-1]/fcon));
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+@@ -155,7 +155,7 @@
+ nelem+1);
+ /* Lya is a special case due to 2s-2p resolution - explictly print it first */
+ fprintf( ioQQQ, "%3i-%2i",2, 1 );
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipH2p][ipH1s].Emis->TauTot/flin ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipH2p][ipH1s].Emis->TauTot/flin ));
+ /* total optical depth in 3-2s and 3-2p, is total of both so 2-1 is correct for 3-2*/
+ /* 06 aug 28, from numLevels_max to _local. */
+ for( n=3; n <= iso.n_HighestResolved_local[ipH_LIKE][nelem]; n++ )
+@@ -163,7 +163,7 @@
+ if( n%NUMB_PER_LINE ==1)
+ fprintf(ioQQQ,"\n");
+ fprintf( ioQQQ, "%3ld-%2ld",n, n-1 );
+- fprintf( ioQQQ,PrintEfmt("%9.2e",
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e",
+ /* just do nP - n'S */
+ Transitions[ipH_LIKE][nelem][ iso.QuantumNumbers2Index[ipH_LIKE][nelem][n][1][2] ][ iso.QuantumNumbers2Index[ipH_LIKE][nelem][n-1][0][2] ].Emis->TauTot/flin ));
+ }
+@@ -172,20 +172,20 @@
+ if( StatesElem[ipH_LIKE][nelem][n].n % NUMB_PER_LINE ==1)
+ fprintf(ioQQQ,"\n");
+ fprintf( ioQQQ, "%3ld-%2ld", StatesElem[ipH_LIKE][nelem][n].n, StatesElem[ipH_LIKE][nelem][n-1].n );
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][n][n-1].Emis->TauTot/flin ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][n][n-1].Emis->TauTot/flin ));
+ }
+
+ fprintf( ioQQQ, "\n" );
+
+ fprintf( ioQQQ, "%3i-%2i",2, 1 );
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipH2p][ipH1s].Emis->TauIn/flin ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][ipH2p][ipH1s].Emis->TauIn/flin ));
+ /* 06 aug 28, from numLevels_max to _local. */
+ for( n=3; n <= iso.n_HighestResolved_local[ipH_LIKE][nelem]; n++ )
+ {
+ if( n%NUMB_PER_LINE ==1)
+ fprintf(ioQQQ,"\n");
+ fprintf( ioQQQ, "%3ld-%2ld",n, n-1 );
+- fprintf( ioQQQ,PrintEfmt("%9.2e",
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e",
+ /* just do nP - n'S */
+ Transitions[ipH_LIKE][nelem][ iso.QuantumNumbers2Index[ipH_LIKE][nelem][n][1][2] ][ iso.QuantumNumbers2Index[ipH_LIKE][nelem][n-1][0][2] ].Emis->TauIn/flin ));
+ }
+@@ -194,7 +194,7 @@
+ if( StatesElem[ipH_LIKE][nelem][n].n % NUMB_PER_LINE ==1)
+ fprintf(ioQQQ,"\n");
+ fprintf( ioQQQ, "%3ld-%2ld", StatesElem[ipH_LIKE][nelem][n].n, StatesElem[ipH_LIKE][nelem][n-1].n );
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][n][n-1].Emis->TauIn/flin ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipH_LIKE][nelem][n][n-1].Emis->TauIn/flin ));
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+@@ -209,7 +209,7 @@
+ for( i=0; i < 5; i++ )
+ {
+ fprintf( ioQQQ, "%5ld", i+1 );
+- fprintf( ioQQQ,PrintEfmt("%9.2e", opac.TauAbsGeo[1][iso.ipIsoLevNIonCon[ipHE_LIKE][ipHELIUM][i]-1]/fcon) );
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", opac.TauAbsGeo[1][iso.ipIsoLevNIonCon[ipHE_LIKE][ipHELIUM][i]-1]/fcon) );
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -217,7 +217,7 @@
+ for( i=0; i < 5; i++ )
+ {
+ fprintf( ioQQQ, "%5ld", i+1 );
+- fprintf( ioQQQ,PrintEfmt("%9.2e", opac.TauAbsGeo[0][iso.ipIsoLevNIonCon[ipHE_LIKE][ipHELIUM][i]-1]/fcon ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", opac.TauAbsGeo[0][iso.ipIsoLevNIonCon[ipHE_LIKE][ipHELIUM][i]-1]/fcon ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -225,24 +225,24 @@
+
+ fprintf( ioQQQ, " Old He Is Lines:" );
+ fprintf( ioQQQ, " %4d",584 );
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe2p1P][ipHe1s1S].Emis->TauTot/flin ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe2p1P][ipHe1s1S].Emis->TauTot/flin ));
+ fprintf( ioQQQ, " %4d",3889 );
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe3p3P][ipHe2s3S].Emis->TauTot/flin ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe3p3P][ipHe2s3S].Emis->TauTot/flin ));
+ fprintf( ioQQQ, " %4d",5016 );
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe3p1P][ipHe2s1S].Emis->TauTot/flin ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe3p1P][ipHe2s1S].Emis->TauTot/flin ));
+ fprintf( ioQQQ, " %4d",5876 );
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe3d3D][ipHe2p3P2].Emis->TauTot/flin ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe3d3D][ipHe2p3P2].Emis->TauTot/flin ));
+ fprintf( ioQQQ, "\n" );
+
+ fprintf( ioQQQ, " New He Is Lines:" );
+ fprintf( ioQQQ, " %4d",584 );
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe2p1P][ipHe1s1S].Emis->TauIn/flin ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe2p1P][ipHe1s1S].Emis->TauIn/flin ));
+ fprintf( ioQQQ, " %4d",3889 );
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe3p3P][ipHe2s3S].Emis->TauIn/flin ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe3p3P][ipHe2s3S].Emis->TauIn/flin ));
+ fprintf( ioQQQ, " %4d",5016 );
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe3p1P][ipHe2s1S].Emis->TauIn/flin ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe3p1P][ipHe2s1S].Emis->TauIn/flin ));
+ fprintf( ioQQQ, " %4d",5876 );
+- fprintf( ioQQQ,PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe3d3D][ipHe2p3P2].Emis->TauIn/flin ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", Transitions[ipHE_LIKE][ipHELIUM][ipHe3d3D][ipHe2p3P2].Emis->TauIn/flin ));
+ fprintf( ioQQQ, "\n" );
+
+ /* ================================================================================*/
+diff -ur c08.00/source/prt_final.cpp c08.00.fmterr/source/prt_final.cpp
+--- c08.00/source/prt_final.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/prt_final.cpp 2014-01-22 19:42:56.571995286 +0100
+@@ -1648,7 +1648,7 @@
+
+ /* t^2 predicted from the structure, weighted by H */
+ fprintf( ioQQQ, " t2(Hstrc)");
+- fprintf( ioQQQ,PrintEfmt("%9.2e", peimbt.t2hstr));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", peimbt.t2hstr));
+
+ /* temperature from both [OIII] and the Balmer jump rel to Hbeta */
+ fprintf( ioQQQ, " T(O3-BAC)");
+@@ -1656,11 +1656,11 @@
+
+ /* t2 from both [OIII] and the Balmer jump rel to Hbeta */
+ fprintf( ioQQQ, " t2(O3-BC)");
+- fprintf( ioQQQ,PrintEfmt("%9.2e", peimbt.t2hyox));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", peimbt.t2hyox));
+
+ /* structural t2 from the O+2 predicted radial dependence */
+ fprintf( ioQQQ, " t2(O3str)");
+- fprintf( ioQQQ,PrintEfmt("%9.2e", peimbt.t2o3str));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", peimbt.t2o3str));
+
+ fprintf( ioQQQ, "\n");
+
+@@ -1710,7 +1710,7 @@
+ for( nd=i0; nd < i1; nd++ )
+ {
+ if( nd != i0 ) fprintf( ioQQQ," " );
+- fprintf( ioQQQ,PrintEfmt("%10.3e", gv.bin[nd]->avdust/radius.depth_x_fillfac));
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", gv.bin[nd]->avdust/radius.depth_x_fillfac));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -1718,7 +1718,7 @@
+ for( nd=i0; nd < i1; nd++ )
+ {
+ if( nd != i0 ) fprintf( ioQQQ," " );
+- fprintf( ioQQQ,PrintEfmt("%10.3e", gv.bin[nd]->avdft/radius.depth_x_fillfac));
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", gv.bin[nd]->avdft/radius.depth_x_fillfac));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -1726,7 +1726,7 @@
+ for( nd=i0; nd < i1; nd++ )
+ {
+ if( nd != i0 ) fprintf( ioQQQ," " );
+- fprintf( ioQQQ,PrintEfmt("%10.3e", gv.bin[nd]->avdpot/radius.depth_x_fillfac));
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", gv.bin[nd]->avdpot/radius.depth_x_fillfac));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -1734,7 +1734,7 @@
+ for( nd=i0; nd < i1; nd++ )
+ {
+ if( nd != i0 ) fprintf( ioQQQ," " );
+- fprintf( ioQQQ,PrintEfmt("%10.3e", gv.bin[nd]->avDGRatio/radius.depth_x_fillfac));
++ fprintf( ioQQQ,"%s", PrintEfmt("%10.3e", gv.bin[nd]->avDGRatio/radius.depth_x_fillfac));
+ /* add up total dust to gas mass ratio */
+ total_dust2gas += gv.bin[nd]->avDGRatio/radius.depth_x_fillfac;
+ }
+@@ -1742,7 +1742,7 @@
+ }
+
+ fprintf(ioQQQ," Dust to gas ratio (by mass):");
+- fprintf(ioQQQ,PrintEfmt("%10.3e", total_dust2gas));
++ fprintf(ioQQQ,"%s", PrintEfmt("%10.3e", total_dust2gas));
+
+ /* total extinction (conv to mags) at V and B per hydrogen, this includes
+ * forward scattering as an extinction process, so is what would be measured
+diff -ur c08.00/source/prt_header.cpp c08.00.fmterr/source/prt_header.cpp
+--- c08.00/source/prt_header.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/prt_header.cpp 2014-01-22 19:43:14.940154463 +0100
+@@ -49,7 +49,7 @@
+ fprintf( ioQQQ, " %4ldCellPeak",rfield.nflux );
+ PrintE82(ioQQQ, rfield.anu[prt.ipeak-1] );
+ fprintf( ioQQQ, " Lo");
+- fprintf( ioQQQ,PrintEfmt("%9.2e", rfield.anu[0] - rfield.widflx[0]/2. ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", rfield.anu[0] - rfield.widflx[0]/2. ));
+ fprintf( ioQQQ, "=%6.2fcm Hi-Con:",
+ 9.117e-6/(rfield.anu[0] - rfield.widflx[0]/2.) );
+ PrintE82(ioQQQ,rfield.anu[rfield.nflux-1] + rfield.widflx[rfield.nflux-1]/2.);
+diff -ur c08.00/source/prt_met.cpp c08.00.fmterr/source/prt_met.cpp
+--- c08.00/source/prt_met.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/prt_met.cpp 2014-01-22 19:39:03.065961840 +0100
+@@ -136,7 +136,7 @@
+ strcat(chAtMol," ");
+ strcat(chAtMol,chAtMolWL);
+ fprintf( ioQQQ, " %10.15s",chAtMol);
+- fprintf( ioQQQ,PrintEfmt("%9.2e", t->Emis->TauIn));
++ fprintf( ioQQQ,"%s", PrintEfmt("%9.2e", t->Emis->TauIn));
+ fprintf( ioQQQ, " ");
+ // throw CR after printing 6 numbers
+ ++n;
+@@ -155,7 +155,7 @@
+ {
+ /* PrtTauFnt is threshold for printing it */
+ fprintf( ioQQQ, " %10.10s",chLineLbl(t));
+- fprintf( ioQQQ, PrintEfmt("%9.2e", t->Emis->TauIn ));
++ fprintf( ioQQQ, "%s", PrintEfmt("%9.2e", t->Emis->TauIn ));
+
+ // throw CR after printing 6 numbers
+ ++n;
+diff -ur c08.00/source/prt_zone.cpp c08.00.fmterr/source/prt_zone.cpp
+--- c08.00/source/prt_zone.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/prt_zone.cpp 2014-01-22 19:38:15.721546825 +0100
+@@ -91,7 +91,7 @@
+ fprintf(ioQQQ," NTR:%3ld Htot:",conv.nPres2Ioniz);
+ PrintE93(ioQQQ,thermal.htot);
+ fprintf(ioQQQ," T912:");
+- fprintf(ioQQQ,PrintEfmt("%9.2e",opac.TauAbsGeo[0][iso.ipIsoLevNIonCon[ipH_LIKE][ipHYDROGEN][ipH1s]-1] ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",opac.TauAbsGeo[0][iso.ipIsoLevNIonCon[ipH_LIKE][ipHYDROGEN][ipH1s]-1] ));
+ fprintf(ioQQQ,"###\n");
+
+ if( trace.nTrConvg )
+@@ -120,7 +120,7 @@
+ fprintf( ioQQQ, " Abun:" );
+ for( i=0; i < LIMELM; i++ )
+ {
+- fprintf( ioQQQ,PrintEfmt("%8.1e", dense.gas_phase[i] ));
++ fprintf( ioQQQ,"%s", PrintEfmt("%8.1e", dense.gas_phase[i] ));
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+@@ -164,48 +164,48 @@
+ hatmic = (dense.xIonDense[ipHYDROGEN][0] + dense.xIonDense[ipHYDROGEN][1])/hatmic;
+
+ fprintf( ioQQQ, " Hydrogen ");
+- fprintf(ioQQQ,PrintEfmt("%9.2e",dense.xIonDense[ipHYDROGEN][0]/dense.gas_phase[ipHYDROGEN]));
+- fprintf(ioQQQ,PrintEfmt("%9.2e",dense.xIonDense[ipHYDROGEN][1]/dense.gas_phase[ipHYDROGEN]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",dense.xIonDense[ipHYDROGEN][0]/dense.gas_phase[ipHYDROGEN]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",dense.xIonDense[ipHYDROGEN][1]/dense.gas_phase[ipHYDROGEN]));
+ fprintf( ioQQQ, " H+o/Hden");
+- fprintf(ioQQQ,PrintEfmt("%9.2e",hatmic ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e",hmi.Hmolec[ipMHm]/dense.gas_phase[ipHYDROGEN] ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",hatmic ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",hmi.Hmolec[ipMHm]/dense.gas_phase[ipHYDROGEN] ));
+ fprintf( ioQQQ, " H- H2");
+ /* this is total H2, the sum of "ground" and excited */
+- fprintf(ioQQQ,PrintEfmt("%9.2e",hmi.H2_total/dense.gas_phase[ipHYDROGEN]));
+- fprintf(ioQQQ,PrintEfmt("%9.2e",hmi.Hmolec[ipMH2p]/dense.gas_phase[ipHYDROGEN]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",hmi.H2_total/dense.gas_phase[ipHYDROGEN]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",hmi.Hmolec[ipMH2p]/dense.gas_phase[ipHYDROGEN]));
+ fprintf( ioQQQ, " H2+ HeH+");
+- fprintf(ioQQQ,PrintEfmt("%9.2e",hmi.Hmolec[ipMHeHp]/dense.gas_phase[ipHYDROGEN]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",hmi.Hmolec[ipMHeHp]/dense.gas_phase[ipHYDROGEN]));
+ fprintf( ioQQQ, " Ho+ ColD");
+- fprintf(ioQQQ,PrintEfmt("%9.2e",colden.colden[ipCOL_H0]));
+- fprintf(ioQQQ,PrintEfmt("%9.2e",colden.colden[ipCOL_Hp]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",colden.colden[ipCOL_H0]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",colden.colden[ipCOL_Hp]));
+ fprintf( ioQQQ, "\n");
+
+ /* print departure coef if desired */
+ if( iso.lgPrtDepartCoef[ipH_LIKE][ipHYDROGEN] )
+ {
+ fprintf( ioQQQ, " Hydrogen " );
+- fprintf(ioQQQ,PrintEfmt("%9.2e", iso.DepartCoef[ipH_LIKE][ipHYDROGEN][ipH1s]));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", 1.));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", iso.DepartCoef[ipH_LIKE][ipHYDROGEN][ipH1s]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", 1.));
+ fprintf( ioQQQ, " H+o/Hden");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", (dense.xIonDense[ipHYDROGEN][0] + dense.xIonDense[ipHYDROGEN][1])/dense.gas_phase[ipHYDROGEN]));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", hmi.hmidep));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", (dense.xIonDense[ipHYDROGEN][0] + dense.xIonDense[ipHYDROGEN][1])/dense.gas_phase[ipHYDROGEN]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", hmi.hmidep));
+ fprintf( ioQQQ, " H- H2");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", hmi.h2dep));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", hmi.h2dep));
+ fprintf( ioQQQ, " H2+");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", hmi.h2pdep));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", hmi.h2pdep));
+ fprintf( ioQQQ, " H3+");
+- fprintf(ioQQQ,PrintEfmt("%9.2e",hmi.h3pdep));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",hmi.h3pdep));
+ fprintf( ioQQQ, "\n" );
+ }
+
+ if( prt.lgPrintHeating )
+ {
+ fprintf( ioQQQ, " ");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", thermal.heating[0][0]/thermal.htot));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", thermal.heating[0][0]/thermal.htot));
+ fprintf( ioQQQ," ");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", thermal.heating[0][15]/thermal.htot));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", thermal.heating[0][15]/thermal.htot));
+ fprintf( ioQQQ," ");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", thermal.heating[0][16]/thermal.htot));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", thermal.heating[0][16]/thermal.htot));
+ fprintf( ioQQQ,"\n");
+ }
+
+@@ -230,15 +230,15 @@
+ if( prt.lgPrintHeating )
+ {
+ fprintf( ioQQQ, " ");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", thermal.heating[0][1]/thermal.htot ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", thermal.heating[0][1]/thermal.htot ));
+ fprintf( ioQQQ, " ");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", 0. ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", 0. ));
+ fprintf( ioQQQ, " BoundCom");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", ionbal.CompRecoilHeatLocal/ thermal.htot));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", ionbal.CompRecoilHeatLocal/ thermal.htot));
+ fprintf( ioQQQ, " Extra:");
+- fprintf(ioQQQ,PrintEfmt("%9.2e",thermal.heating[0][20]/thermal.htot));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",thermal.heating[0][20]/thermal.htot));
+ fprintf( ioQQQ, " Pairs:");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", thermal.heating[0][21]/ thermal.htot ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", thermal.heating[0][21]/ thermal.htot ));
+ fprintf( ioQQQ," H-lines\n");
+ }
+
+@@ -248,36 +248,36 @@
+ fprintf( ioQQQ, " Helium " );
+ for( i=0; i < 3; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", dense.xIonDense[ipHELIUM][i]/dense.gas_phase[ipHELIUM]) );
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", dense.xIonDense[ipHELIUM][i]/dense.gas_phase[ipHELIUM]) );
+ }
+
+ fprintf( ioQQQ, " He I2SP3");
+- fprintf(ioQQQ,PrintEfmt("%9.2e",
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",
+ StatesElem[ipHE_LIKE][ipHELIUM][ipHe2s3S].Pop*dense.xIonDense[ipHELIUM][1]/dense.gas_phase[ipHELIUM] ));
+ fprintf( ioQQQ, " Comp H,C");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", rfield.cmheat ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", rfield.cmcool*phycon.te));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", rfield.cmheat ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", rfield.cmcool*phycon.te));
+ fprintf( ioQQQ , " Fill Fac");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", geometry.FillFac));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", geometry.FillFac));
+ fprintf( ioQQQ , " Gam1/tot");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", hydro.H_ion_frac_photo));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", hydro.H_ion_frac_photo));
+ fprintf( ioQQQ, "\n");
+
+ /* option to print departure coef */
+ if( iso.lgPrtDepartCoef[ipH_LIKE][ipHELIUM] )
+ {
+ fprintf( ioQQQ, " Helium " );
+- fprintf(ioQQQ,PrintEfmt("%9.2e", iso.DepartCoef[ipHE_LIKE][ipHELIUM][0]));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", iso.DepartCoef[ipH_LIKE][ipHELIUM][ipH1s]));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", 1.));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", iso.DepartCoef[ipHE_LIKE][ipHELIUM][0]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", iso.DepartCoef[ipH_LIKE][ipHELIUM][ipH1s]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", 1.));
+
+ fprintf( ioQQQ, " Comp H,C");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", rfield.cmheat ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", rfield.cmcool*phycon.te ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", rfield.cmheat ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", rfield.cmcool*phycon.te ));
+ fprintf( ioQQQ , " Fill Fac");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", geometry.FillFac ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", geometry.FillFac ));
+ fprintf( ioQQQ , " Gam1/tot");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", hydro.H_ion_frac_photo));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", hydro.H_ion_frac_photo));
+ fprintf( ioQQQ, "\n");
+ }
+
+@@ -292,15 +292,15 @@
+ thermal.htot, thermal.heating[0][19]/thermal.htot, thermal.heating[0][11]/
+ thermal.htot );*/
+ fprintf( ioQQQ, " ");
+- fprintf(ioQQQ,PrintEfmt("%9.2e",thermal.heating[1][0]/thermal.htot));
+- fprintf(ioQQQ,PrintEfmt("%9.2e",thermal.heating[1][1]/thermal.htot));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",thermal.heating[1][0]/thermal.htot));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",thermal.heating[1][1]/thermal.htot));
+ fprintf( ioQQQ, " Lines:");
+- fprintf(ioQQQ,PrintEfmt("%9.2e",thermal.heating[0][22]/thermal.htot));
+- fprintf(ioQQQ,PrintEfmt("%9.2e",thermal.heating[1][2]/thermal.htot));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",thermal.heating[0][22]/thermal.htot));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",thermal.heating[1][2]/thermal.htot));
+ fprintf( ioQQQ, " Compton:");
+- fprintf(ioQQQ,PrintEfmt("%9.2e",thermal.heating[0][19]/thermal.htot));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",thermal.heating[0][19]/thermal.htot));
+ fprintf( ioQQQ, " FFHeatig");
+- fprintf(ioQQQ,PrintEfmt("%9.2e",thermal.heating[0][11]/thermal.htot));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",thermal.heating[0][11]/thermal.htot));
+ fprintf( ioQQQ, "\n");
+ }
+
+@@ -309,59 +309,59 @@
+ /* helium singlets and triplets relative to total helium gas phase density */
+ fac = dense.xIonDense[ipHELIUM][1]/dense.gas_phase[ipHELIUM];
+ fprintf( ioQQQ, " He singlet n " );
+- fprintf(ioQQQ,PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][1][ipHe1s1S].Pop*fac ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][1][ipHe1s1S].Pop*fac ));
+ /* singlet n=2 complex */
+ if( iso.numPrintLevels[ipHE_LIKE][ipHELIUM]>= ipHe2p1P )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][1][ipHe2s1S].Pop*fac ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][1][ipHe2p1P].Pop*fac ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][1][ipHe2s1S].Pop*fac ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][1][ipHe2p1P].Pop*fac ));
+ }
+ else
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", 0. ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", 0. ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", 0. ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", 0. ));
+ }
+ /* singlet n=3 complex */
+ if( iso.numPrintLevels[ipHE_LIKE][ipHELIUM]>= ipHe3p1P )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][ipHELIUM][ipHe3s1S].Pop*fac ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][ipHELIUM][ipHe3p1P].Pop*fac ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][ipHELIUM][ipHe3d1D].Pop*fac ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][ipHELIUM][ipHe3s1S].Pop*fac ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][ipHELIUM][ipHe3p1P].Pop*fac ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][ipHELIUM][ipHe3d1D].Pop*fac ));
+ }
+ else
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", 0. ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", 0. ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", 0. ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", 0. ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", 0. ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", 0. ));
+ }
+
+ fprintf( ioQQQ, " He tripl" );
+ /* triplet n=2 complex */
+ if( iso.numPrintLevels[ipHE_LIKE][ipHELIUM]>= ipHe2p3P2 )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][ipHELIUM][ipHe2s3S].Pop*fac ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e",
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][ipHELIUM][ipHe2s3S].Pop*fac ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",
+ StatesElem[ipHE_LIKE][ipHELIUM][ipHe2p3P0].Pop*fac+
+ StatesElem[ipHE_LIKE][ipHELIUM][ipHe2p3P1].Pop*fac+
+ StatesElem[ipHE_LIKE][ipHELIUM][ipHe2p3P2].Pop*fac ));
+ }
+ else
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", 0. ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", 0. ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", 0. ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", 0. ));
+ }
+ /* triplet n=3 complex */
+ if( iso.numPrintLevels[ipHE_LIKE][ipHELIUM]> ipHe3d3D )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][ipHELIUM][ipHe3s3S].Pop*fac ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][ipHELIUM][ipHe3p3P].Pop*fac ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][ipHELIUM][ipHe3d3D].Pop*fac ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][ipHELIUM][ipHe3s3S].Pop*fac ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][ipHELIUM][ipHe3p3P].Pop*fac ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", StatesElem[ipHE_LIKE][ipHELIUM][ipHe3d3D].Pop*fac ));
+ }
+ else
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", 0. ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", 0. ));
+- fprintf(ioQQQ,PrintEfmt("%9.2e", 0. ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", 0. ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", 0. ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", 0. ));
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+@@ -392,34 +392,34 @@
+ /* >>chng 01 dec 08, move pressure to line before grains, after radiation properties */
+ /* gas pressure, pressure due to incident radiation field, rad accel */
+ fprintf( ioQQQ, " Pressure NgasTgas");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", pressure.PresGasCurr/BOLTZMANN));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", pressure.PresGasCurr/BOLTZMANN));
+ fprintf( ioQQQ, " P(total)");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", pressure.PresTotlCurr));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", pressure.PresTotlCurr));
+ fprintf( ioQQQ, " P( gas )");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", pressure.PresGasCurr));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", pressure.PresGasCurr));
+ fprintf( ioQQQ, " P(Radtn)");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", pressure.pres_radiation_lines_curr));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", pressure.pres_radiation_lines_curr));
+ fprintf( ioQQQ, " Rad accl");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", wind.AccelTot));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", wind.AccelTot));
+ fprintf( ioQQQ, " ForceMul");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", wind.fmul));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", wind.fmul));
+ fprintf( ioQQQ, "\n" );
+
+ fprintf( ioQQQ , " Texc(La)");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", hydro.TexcLya ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", hydro.TexcLya ));
+ fprintf( ioQQQ , " T(contn)");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", coninc ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", coninc ));
+ fprintf( ioQQQ , " T(diffs)");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", cdif ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", cdif ));
+ /* print the total radiation density expressed as an equivalent gas pressure */
+ fprintf( ioQQQ , " nT (c+d)");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", con_density ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", con_density ));
+ /* print the radiation to gas pressure */
+ fprintf( ioQQQ , " Prad/Gas");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", pressure.pbeta ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", pressure.pbeta ));
+ /* magnetic to gas pressure ratio */
+ fprintf( ioQQQ , " Pmag/Gas");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", magnetic.pressure / pressure.PresGasCurr) );
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", magnetic.pressure / pressure.PresGasCurr) );
+ fprintf( ioQQQ, "\n" );
+
+ if( gv.lgGrainPhysicsOn )
+@@ -431,17 +431,17 @@
+ * added QHMARK here and in the write statement */
+ chQHMark = (char)(( gv.bin[nd]->lgQHeat && gv.bin[nd]->lgUseQHeat ) ? '*' : ' ');
+ fprintf( ioQQQ, "%-12.12s%c DustTemp",gv.bin[nd]->chDstLab, chQHMark);
+- fprintf(ioQQQ,PrintEfmt("%9.2e", gv.bin[nd]->tedust));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", gv.bin[nd]->tedust));
+ fprintf( ioQQQ, " Pot Volt");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", gv.bin[nd]->dstpot*EVRYD));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", gv.bin[nd]->dstpot*EVRYD));
+ fprintf( ioQQQ, " Chrg (e)");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", gv.bin[nd]->AveDustZ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", gv.bin[nd]->AveDustZ));
+ fprintf( ioQQQ, " drf cm/s");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", gv.bin[nd]->DustDftVel));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", gv.bin[nd]->DustDftVel));
+ fprintf( ioQQQ, " Heating:");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", gv.bin[nd]->GasHeatPhotoEl));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", gv.bin[nd]->GasHeatPhotoEl));
+ fprintf( ioQQQ, " Frac tot");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", gv.bin[nd]->GasHeatPhotoEl/thermal.htot));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", gv.bin[nd]->GasHeatPhotoEl/thermal.htot));
+ fprintf( ioQQQ, "\n" );
+ }
+ }
+@@ -451,17 +451,17 @@
+ if( findspecies("CO")->hevmol > 0. )
+ {
+ fprintf( ioQQQ, " Molecules CH/Ctot:");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", findspecies("CH")->hevmol/dense.gas_phase[ipCARBON]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", findspecies("CH")->hevmol/dense.gas_phase[ipCARBON]));
+ fprintf( ioQQQ, " CH+/Ctot");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", findspecies("CH+")->hevmol/dense.gas_phase[ipCARBON]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", findspecies("CH+")->hevmol/dense.gas_phase[ipCARBON]));
+ fprintf( ioQQQ, " CO/Ctot:");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", findspecies("CO")->hevmol/dense.gas_phase[ipCARBON]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", findspecies("CO")->hevmol/dense.gas_phase[ipCARBON]));
+ fprintf( ioQQQ, " CO+/Ctot");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", findspecies("CO+")->hevmol/dense.gas_phase[ipCARBON]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", findspecies("CO+")->hevmol/dense.gas_phase[ipCARBON]));
+ fprintf( ioQQQ, " H2O/Otot");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", findspecies("H2O")->hevmol/dense.gas_phase[ipOXYGEN]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", findspecies("H2O")->hevmol/dense.gas_phase[ipOXYGEN]));
+ fprintf( ioQQQ, " OH/Ototl");
+- fprintf(ioQQQ,PrintEfmt("%9.2e", findspecies("OH")->hevmol/dense.gas_phase[ipOXYGEN]));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", findspecies("OH")->hevmol/dense.gas_phase[ipOXYGEN]));
+ fprintf( ioQQQ, "\n");
+ }
+
+@@ -475,17 +475,17 @@
+ fprintf( ioQQQ, " Lithium " );
+ for( i=0; i < 4; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", dense.xIonDense[ipLITHIUM][i]/MAX2(1e-35,dense.gas_phase[ipLITHIUM]) ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", dense.xIonDense[ipLITHIUM][i]/MAX2(1e-35,dense.gas_phase[ipLITHIUM]) ));
+ }
+ fprintf( ioQQQ, " Berylliu" );
+ for( i=0; i < 5; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", dense.xIonDense[ipBERYLLIUM][i]/MAX2(1e-35,dense.gas_phase[ipBERYLLIUM])) );
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", dense.xIonDense[ipBERYLLIUM][i]/MAX2(1e-35,dense.gas_phase[ipBERYLLIUM])) );
+ }
+
+ /* print secondary ionization rate for atomic hydrogen */
+ fprintf( ioQQQ, " sec ion:" );
+- fprintf(ioQQQ,PrintEfmt("%9.2e", secondaries.csupra[ipHYDROGEN][0]) );
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", secondaries.csupra[ipHYDROGEN][0]) );
+ fprintf( ioQQQ, "\n" );
+
+ /* option to print heating due to these stages*/
+@@ -494,13 +494,13 @@
+ fprintf( ioQQQ, " " );
+ for( i=0; i < 3; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", thermal.heating[ipLITHIUM][i]/ thermal.htot) );
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", thermal.heating[ipLITHIUM][i]/ thermal.htot) );
+ }
+ fprintf( ioQQQ, " " );
+
+ for( i=0; i < 4; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", thermal.heating[ipBERYLLIUM][i]/thermal.htot ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", thermal.heating[ipBERYLLIUM][i]/thermal.htot ));
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+@@ -512,7 +512,7 @@
+ fprintf( ioQQQ, " Boron " );
+ for( i=0; i < 6; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", dense.xIonDense[ipBORON][i]/MAX2(1e-35,dense.gas_phase[ipBORON]) ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", dense.xIonDense[ipBORON][i]/MAX2(1e-35,dense.gas_phase[ipBORON]) ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -522,7 +522,7 @@
+ fprintf( ioQQQ, " " );
+ for( i=0; i < 5; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", thermal.heating[ipBORON][i]/thermal.htot ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", thermal.heating[ipBORON][i]/thermal.htot ));
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+@@ -532,16 +532,16 @@
+ fprintf( ioQQQ, " Carbon " );
+ for( i=0; i < 7; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", dense.xIonDense[ipCARBON][i]/SDIV(dense.gas_phase[ipCARBON])) );
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", dense.xIonDense[ipCARBON][i]/SDIV(dense.gas_phase[ipCARBON])) );
+ }
+ /* some molecules trail the line */
+ fprintf( ioQQQ, " H2O+/O " );
+- fprintf(ioQQQ,PrintEfmt("%9.2e", findspecies("H2O+")->hevmol/MAX2(1e-35,dense.gas_phase[ipOXYGEN]) ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", findspecies("H2O+")->hevmol/MAX2(1e-35,dense.gas_phase[ipOXYGEN]) ));
+ fprintf( ioQQQ, " OH+/Otot" );
+- fprintf(ioQQQ,PrintEfmt("%9.2e", findspecies("OH+")->hevmol/ MAX2(1e-35,dense.gas_phase[ipOXYGEN]) ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", findspecies("OH+")->hevmol/ MAX2(1e-35,dense.gas_phase[ipOXYGEN]) ));
+ /* print extra heating, normally zero */
+ fprintf( ioQQQ, " Hex(tot)" );
+- fprintf(ioQQQ,PrintEfmt("%9.2e", thermal.heating[0][20] ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", thermal.heating[0][20] ));
+ fprintf( ioQQQ, "\n" );
+
+ /* option to print heating*/
+@@ -550,7 +550,7 @@
+ fprintf( ioQQQ, " " );
+ for( i=0; i < ipCARBON+1; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", thermal.heating[ipCARBON][i]/ thermal.htot) );
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", thermal.heating[ipCARBON][i]/ thermal.htot) );
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+@@ -559,12 +559,12 @@
+ fprintf( ioQQQ, " Nitrogen " );
+ for( i=1; i <= 8; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e",dense.xIonDense[ipNITROGEN][i-1]/ SDIV(dense.gas_phase[ipNITROGEN]) ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",dense.xIonDense[ipNITROGEN][i-1]/ SDIV(dense.gas_phase[ipNITROGEN]) ));
+ }
+ fprintf( ioQQQ, " O2/Ototl" );
+- fprintf(ioQQQ,PrintEfmt("%9.2e", findspecies("O2")->hevmol/MAX2(1e-35,dense.gas_phase[ipOXYGEN])));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", findspecies("O2")->hevmol/MAX2(1e-35,dense.gas_phase[ipOXYGEN])));
+ fprintf( ioQQQ, " O2+/Otot" );
+- fprintf(ioQQQ,PrintEfmt("%9.2e", findspecies("O2+")->hevmol/ MAX2(1e-35,dense.gas_phase[ipOXYGEN]) ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", findspecies("O2+")->hevmol/ MAX2(1e-35,dense.gas_phase[ipOXYGEN]) ));
+ fprintf( ioQQQ, "\n" );
+
+ /* option to print heating*/
+@@ -573,7 +573,7 @@
+ fprintf( ioQQQ, " " );
+ for( i=0; i < ipNITROGEN+1; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", thermal.heating[ipNITROGEN][i]/ thermal.htot ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", thermal.heating[ipNITROGEN][i]/ thermal.htot ));
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+@@ -583,7 +583,7 @@
+ fprintf( ioQQQ, " Oxygen " );
+ for( i=1; i <= 9; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e",dense.xIonDense[ipOXYGEN][i-1]/ SDIV(dense.gas_phase[ipOXYGEN]) ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e",dense.xIonDense[ipOXYGEN][i-1]/ SDIV(dense.gas_phase[ipOXYGEN]) ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -593,7 +593,7 @@
+ fprintf( ioQQQ, " " );
+ for( i=0; i < ipOXYGEN+1; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", thermal.heating[ipOXYGEN][i]/ thermal.htot ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", thermal.heating[ipOXYGEN][i]/ thermal.htot ));
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+@@ -610,7 +610,7 @@
+
+ for( i=0; i < nelem+2; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", dense.xIonDense[nelem][i]/dense.gas_phase[nelem] ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", dense.xIonDense[nelem][i]/dense.gas_phase[nelem] ));
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -620,7 +620,7 @@
+ fprintf( ioQQQ, " " );
+ for( i=0; i < nelem+1; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", thermal.heating[nelem][i]/thermal.htot ));
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", thermal.heating[nelem][i]/thermal.htot ));
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+@@ -643,7 +643,7 @@
+
+ for( i=0; i < LINE; i++ )
+ {
+- fprintf(ioQQQ,PrintEfmt("%9.2e", dense.xIonDense[nelem][i+ishift]/dense.gas_phase[nelem]) );
++ fprintf(ioQQQ,"%s", PrintEfmt("%9.2e", dense.xIonDense[nelem][i+ishift]/dense.gas_phase[nelem]) );
+ }
+ fprintf( ioQQQ, "\n" );
+
+@@ -653,8 +653,7 @@
+ fprintf( ioQQQ, " " );
+ for( i=0; i < LINE; i++ )
+ {
+- fprintf(ioQQQ,
+- PrintEfmt("%9.2e", thermal.heating[nelem][i+ishift]/thermal.htot ));
++ fprintf(ioQQQ, "%s", PrintEfmt("%9.2e", thermal.heating[nelem][i+ishift]/thermal.htot ));
+ }
+ fprintf( ioQQQ, "\n" );
+ }
+diff -ur c08.00/source/punch_linedata.cpp c08.00.fmterr/source/punch_linedata.cpp
+--- c08.00/source/punch_linedata.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/punch_linedata.cpp 2014-01-22 19:38:30.953680466 +0100
+@@ -328,10 +328,10 @@
+ (long)(t->Hi->g) );
+
+ /* oscillator strength */
+- fprintf( ioPUN,PrintEfmt("%9.2e", t->Emis->gf));
++ fprintf( ioPUN,"%s", PrintEfmt("%9.2e", t->Emis->gf));
+
+ /* Einstein A for transition */
+- fprintf( ioPUN,PrintEfmt("%9.2e", t->Emis->Aul));
++ fprintf( ioPUN,"%s", PrintEfmt("%9.2e", t->Emis->Aul));
+
+ /* next collision strengths, use different formats depending on size
+ * of collision strength */
+diff -ur c08.00/source/rt_tau_init.cpp c08.00.fmterr/source/rt_tau_init.cpp
+--- c08.00/source/rt_tau_init.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/rt_tau_init.cpp 2014-01-22 19:34:10.810379281 +0100
+@@ -683,7 +683,7 @@
+ if( Transitions[ipISO][trace.ipIsoTrace[ipISO]][ipHi][ipLo].Emis->Aul <= iso.SmallA )
+ continue;
+
+- fprintf( ioQQQ,PrintEfmt("%9.2e",
++ fprintf( ioQQQ, "%s", PrintEfmt("%9.2e",
+ Transitions[ipISO][trace.ipIsoTrace[ipISO]][ipHi][ipLo].Emis->TauTot ));
+ }
+ fprintf( ioQQQ, "\n" );
+@@ -698,7 +698,7 @@
+ if( Transitions[ipISO][trace.ipIsoTrace[ipISO]][ipHi][ipLo].Emis->Aul <= iso.SmallA )
+ continue;
+
+- fprintf( ioQQQ,PrintEfmt("%9.2e",
++ fprintf( ioQQQ, "%s", PrintEfmt("%9.2e",
+ Transitions[ipISO][trace.ipIsoTrace[ipISO]][ipHi][ipLo].Emis->TauIn ));
+ }
+ fprintf( ioQQQ, "\n" );
+@@ -713,7 +713,7 @@
+ if( Transitions[ipISO][trace.ipIsoTrace[ipISO]][ipHi][ipLo].Emis->Aul <= iso.SmallA )
+ continue;
+
+- fprintf( ioQQQ,PrintEfmt("%9.2e",
++ fprintf( ioQQQ, "%s", PrintEfmt("%9.2e",
+ Transitions[ipISO][trace.ipIsoTrace[ipISO]][ipHi][ipLo].Emis->Aul) );
+ }
+ fprintf( ioQQQ, "\n" );
+@@ -728,7 +728,7 @@
+ if( Transitions[ipISO][trace.ipIsoTrace[ipISO]][ipHi][ipLo].Emis->Aul <= iso.SmallA )
+ continue;
+
+- fprintf( ioQQQ,PrintEfmt("%9.2e",
++ fprintf( ioQQQ, "%s", PrintEfmt("%9.2e",
+ Transitions[ipISO][trace.ipIsoTrace[ipISO]][ipHi][ipLo].Emis->Aul*
+ (Transitions[ipISO][trace.ipIsoTrace[ipISO]][ipHi][ipLo].Emis->Pdest +
+ Transitions[ipISO][trace.ipIsoTrace[ipISO]][ipHi][ipLo].Emis->Pelec_esc +
+@@ -746,7 +746,7 @@
+ if( Transitions[ipISO][trace.ipIsoTrace[ipISO]][ipHi][ipLo].Emis->Aul <= iso.SmallA )
+ continue;
+
+- fprintf( ioQQQ,PrintEfmt("%9.2e",
++ fprintf( ioQQQ, "%s", PrintEfmt("%9.2e",
+ Transitions[ipISO][trace.ipIsoTrace[ipISO]][ipHi][ipLo].Emis->opacity ));
+ }
+ fprintf( ioQQQ, "\n" );
+diff -ur c08.00/source/stars.cpp c08.00.fmterr/source/stars.cpp
+--- c08.00/source/stars.cpp 2008-08-18 13:05:17.000000000 +0200
++++ c08.00.fmterr/source/stars.cpp 2014-01-22 19:32:16.458351716 +0100
+@@ -2235,7 +2235,7 @@
+ {
+ fprintf( ioQQQ, " * c<< FINAL: T_eff = %7.1f, ", aval[0] );
+ fprintf( ioQQQ, "log(g) = %4.2f, M(ZAMS) = %5.1f, age = ", aval[1], pow(10.,aval[2]) );
+- fprintf( ioQQQ, PrintEfmt("%8.2e",aval[3]) );
++ fprintf( ioQQQ, "%s", PrintEfmt("%8.2e",aval[3]) );
+ fprintf( ioQQQ, " >>> *\n" );
+ }
+
+@@ -3307,7 +3307,7 @@
+ " %6s = %4.2f %6s = %5.2f %6s = ",
+ grid->names[0], aval[0], grid->names[1], aval[1],
+ grid->names[2], aval[2], grid->names[3] );
+- fprintf( ioQQQ, PrintEfmt( "%9.2e", aval[3] ) );
++ fprintf( ioQQQ, "%s", PrintEfmt( "%9.2e", aval[3] ) );
+ fprintf( ioQQQ, " >>> *\n" );
+ }
+ }
+@@ -3647,7 +3647,7 @@
+ grid->ident, ind, grid->names[0], grid->telg[ind-1].par[0],
+ grid->names[1], grid->telg[ind-1].par[1],
+ grid->names[2], grid->telg[ind-1].par[2], grid->names[3] );
+- fprintf( ioQQQ, PrintEfmt( "%9.2e", grid->telg[ind-1].par[3] ) );
++ fprintf( ioQQQ, "%s", PrintEfmt( "%9.2e", grid->telg[ind-1].par[3] ) );
+ fprintf( ioQQQ, " >> *\n" );
+ }
+ }
diff --git a/cloudy.spec b/cloudy.spec
index 725d968..a267683 100644
--- a/cloudy.spec
+++ b/cloudy.spec
@@ -1,18 +1,17 @@
Name: cloudy
Version: 08.00
-Release: 8%{?dist}
+Release: 9%{?dist}
Summary: Spectral synthesis code to simulate conditions in interstellar matter
-%define upversion 08.00
Group: Applications/Engineering
License: BSD
URL: http://www.nublado.org/
-Source0: ftp://gradj.pa.uky.edu/gary/cloudy_gold/c%{upversion}.tar.gz
+Source0: ftp://gradj.pa.uky.edu/gary/cloudy_gold/c%{version}.tar.gz
Source1: cloudy_no_date_footer.tar.gz
Patch0: cloudy-doxygen.patch
Patch1: cloudy-shared.patch
-Buildroot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
+Patch2: cloudy-fmterr.patch
Requires: %{name}-libs = %{version}-%{release}
@@ -58,8 +57,6 @@ This package contains the usage documentation for %{name}.
Summary: Developer documentation for %{name}
Group: Documentation
BuildArch: noarch
-Obsoletes: cloudy-docs < 08.00-1
-Provides: cloudy-docs = %{version}-%{release}
%description devel-doc
Developer documentation for %{name}
@@ -69,6 +66,7 @@ Developer documentation for %{name}
%setup -q -n c%{version} -T -D -a 1
%patch0 -p1
%patch1 -p1
+%patch2 -p1
chmod +x source/precompile.pl
%build
@@ -84,7 +82,6 @@ find -empty -exec rm '{}' ';'
find -name installdox -exec rm '{}' ';'
%install
-rm -rf %{buildroot}
mkdir -p %{buildroot}/%{_bindir}
mkdir -p %{buildroot}/%{_libdir}
mkdir -p %{buildroot}/%{_includedir}/%{name}
@@ -104,39 +101,35 @@ cp -a data/*.rfi %{buildroot}/%{_datadir}/%{name}/grain
cp -a data/*.szd %{buildroot}/%{_datadir}/%{name}/grain
cp -a data/*.in %{buildroot}/%{_datadir}/%{name}/scripts
-%clean
-%{__rm} -fr %{buildroot}
-
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
%files
-%defattr(-,root,root,-)
%doc readme.txt
%{_bindir}/*
%files doc
-%defattr(-,root,root,-)
%doc license.txt docs/*
%files libs
-%defattr(-,root,root,-)
%doc license.txt data/readme_data.htm data/readme_LineList_dat.txt
%{_libdir}/lib%{name}.so.*
%{_datadir}/%{name}
%files devel
-%defattr(-,root,root,-)
%doc license.txt
%{_includedir}/%{name}
%{_libdir}/lib%{name}.so
%files devel-doc
-%defattr(-,root,root,-)
%doc license.txt doxygen/html
%changelog
+* Wed Jan 22 2014 Sergio Pascual <sergiopr at fedoraproject.org> - 08.00-9
+- Updated macros
+- Fix bz #1037017, format security error
+
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 08.00-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
@@ -181,7 +174,7 @@ cp -a data/*.in %{buildroot}/%{_datadir}/%{name}/scripts
* Thu Mar 27 2008 Sergio Pascual <sergiopr at fedoraproject.org> - 07.02.01-3
- Docs package is noarch (reverted)
-* Sat Feb 24 2008 Sergio Pascual <sergiopr at fedoraproject.org> - 07.02.01-2
+* Sun Feb 24 2008 Sergio Pascual <sergiopr at fedoraproject.org> - 07.02.01-2
- Too much files in docs
* Thu Feb 14 2008 Sergio Pascual <sergiopr at fedoraproject.org> - 07.02.01-1
More information about the scm-commits
mailing list