Csound Csound-dev Csound-tekno Search About

[CSOUND-DEV:5154] 4.23f12 code discrepancy?

Date2004-08-09 09:38
FromAnthony Kozar
Subject[CSOUND-DEV:5154] 4.23f12 code discrepancy?
John (ff.), 

Did the code you released as 4.23f12 match the CVS repository?

I just committed a fix to the file rdorch.c (csound4) for a problem which I
see did not exist in the previous version in CVS.

rdorch.c,1.1 in CVS has in skiporchar():

      if (c == '\n' || c == '\r' || c == 26) {    /* MS-DOS spare ^Z */
        str->line++; linepos = -1;

and in getorchar():

    if (c == '\r') c = '\n';


But rdscor.c in 4.23f12 seems to have:

      if (c == '\n' || c == '\r' || c == 26) {    /* MS-DOS spare ^Z */
        str->line++; linepos = -1;
        if (c=='\r') {
          if ((c = getc(str->file))!='\n') ungetc(c, str->file);
        }

and

    if (c == '\r') {
      int d;
      if ((d=getc(str->file)!='\n')) {
/*         printf("next char is %c(%.2x)\n", d, d); */
        ungetc(d, str->file);
      }
      c = '\n';                 /* *** Problem here with line endings *** */
    }


I just added this code to csound 4 CVS apparently with #ifndef mac_classic
to "fix" it without realizing that it wasn't in CVS.


Anthony Kozar
anthony.kozar@utoledo.edu
http://akozar.spymac.net/

Date2004-08-09 10:07
Fromjpff@codemist.co.uk
Subject[CSOUND-DEV:5155] Re: 4.23f12 code discrepancy?
Possibly not.  I have had great problems with the csound repository
and so attempts to keep up to date may fail.  I have a parallel
csound4 directory which does compile and so it is possible that I
never copied it back.
==John ffitch

Date2004-08-10 04:06
Fromramsdell@mitre.org (John D. Ramsdell)
Subject[CSOUND-DEV:5161] More 4.23f12 code discrepancies
I compared the sources in Csound.tar.gz distributed in the csound
package as version csound4.23f12, with the current version of the
sources in the csound directory in the csound module of the csound CVS
repository.  I noticed what appears to be significant differences in
dumpf.c, otran.c, and widgets.cpp.  Here is what I found.

John

$ diff -ur cvs/csound/csound proj/csound4_23f12
diff -ur cvs/csound/csound/dumpf.c proj/csound4_23f12/dumpf.c
--- cvs/csound/csound/dumpf.c	2004-07-18 10:17:54.000000000 -0400
+++ proj/csound4_23f12/dumpf.c	2004-03-04 13:16:32.000000000 -0500
@@ -33,27 +33,23 @@
 void kdmpset(KDUMP *p)
 {
     if (*p->ifilcod == sstrcod) {       /* open in curdir or pathname */
-      char soundoname[1024];
-      if (p->STRARG == NULL) strcpy(soundoname,unquote(currevent->strarg));
-      else strcpy(soundoname,unquote(p->STRARG));    /* unquote it, else use */
-      
-      if ((p->fdch.fd = openout(soundoname,1)) < 0) {
-        sprintf(errmsg,Str(X_210,"Cannot open %s"), soundoname);
-        initerror(errmsg);
-        return;
-      }
-      fdrecord(&p->fdch);
-      if ((p->format = (int)*p->iformat) < 1 || p->format > 8) {
-        initerror(Str(X_1335,"unknown format request"));
-        return;
-      }
-      if (p->format == 2 || p->format == 3) {
-        initerror(Str(X_587,"alaw and ulaw not implemented here"));
-        return;
-      }
-      if ((p->timcount = (long)(*p->iprd * ekr)) <= 0)
+        if ((p->fdch.fd = openout(p->STRARG, 1)) < 0) {
+            sprintf(errmsg,Str(X_210,"Cannot open %s"), retfilnam);
+            initerror(errmsg);
+            return;
+        }
+        fdrecord(&p->fdch);
+        if ((p->format = (int)*p->iformat) < 1 || p->format > 8) {
+            initerror(Str(X_1335,"unknown format request"));
+            return;
+        }
+        if (p->format == 2 || p->format == 3) {
+            initerror(Str(X_587,"alaw and ulaw not implemented here"));
+            return;
+        }
+        if ((p->timcount = (long)(*p->iprd * ekr)) <= 0)
             p->timcount = 1;
-      p->countdown = p->timcount;
+        p->countdown = p->timcount;
     }
     else initerror(Str(X_1009,"need quoted filename"));
 }
@@ -61,27 +57,23 @@
 void kdmp2set(KDUMP2 *p)
 {
     if (*p->ifilcod == sstrcod) {       /* open in curdir or pathname */
-      char soundoname[1024];
-      if (p->STRARG == NULL) strcpy(soundoname,unquote(currevent->strarg));
-      else strcpy(soundoname,unquote(p->STRARG));    /* unquote it, else use */
-
-      if ((p->fdch.fd = openout(soundoname,1)) < 0) {
-        sprintf(errmsg,Str(X_210,"Cannot open %s"), soundoname);
-        initerror(errmsg);
-        return;
-      }
-      fdrecord(&p->fdch);
-      if ((p->format = (int)*p->iformat) < 1 || p->format > 8) {
-        initerror(Str(X_1335,"unknown format request"));
-        return;
-      }
-      if (p->format == 2 || p->format == 3) {
-        initerror(Str(X_587,"alaw and ulaw not implemented here"));
-        return;
-      }
-      if ((p->timcount = (long)(*p->iprd * ekr)) <= 0)
-        p->timcount = 1;
-      p->countdown = p->timcount;
+        if ((p->fdch.fd = openout(p->STRARG, 1)) < 0) {
+            sprintf(errmsg,Str(X_210,"Cannot open %s"), retfilnam);
+            initerror(errmsg);
+            return;
+        }
+        fdrecord(&p->fdch);
+        if ((p->format = (int)*p->iformat) < 1 || p->format > 8) {
+            initerror(Str(X_1335,"unknown format request"));
+            return;
+        }
+        if (p->format == 2 || p->format == 3) {
+            initerror(Str(X_587,"alaw and ulaw not implemented here"));
+            return;
+        }
+        if ((p->timcount = (long)(*p->iprd * ekr)) <= 0)
+            p->timcount = 1;
+        p->countdown = p->timcount;
     }
     else initerror(Str(X_1009,"need quoted filename"));
 }
@@ -89,27 +81,23 @@
 void kdmp3set(KDUMP3 *p)
 {
     if (*p->ifilcod == sstrcod) {       /* open in curdir or pathname */
-      char soundoname[1024];
-      if (p->STRARG == NULL) strcpy(soundoname,unquote(currevent->strarg));
-      else strcpy(soundoname,unquote(p->STRARG));    /* unquote it, else use */
-      
-      if ((p->fdch.fd = openout(soundoname,1)) < 0) {
-        sprintf(errmsg,Str(X_210,"Cannot open %s"), soundoname);
-        initerror(errmsg);
-        return;
-      }
-      fdrecord(&p->fdch);
-      if ((p->format = (int)*p->iformat) < 1 || p->format > 8) {
-        initerror(Str(X_1335,"unknown format request"));
-        return;
-      }
-      if (p->format == 2 || p->format == 3) {
-        initerror(Str(X_587,"alaw and ulaw not implemented here"));
-        return;
-      }
-      if ((p->timcount = (long)(*p->iprd * ekr)) <= 0)
-        p->timcount = 1;
-      p->countdown = p->timcount;
+        if ((p->fdch.fd = openout(p->STRARG, 1)) < 0) {
+            sprintf(errmsg,Str(X_210,"Cannot open %s"), retfilnam);
+            initerror(errmsg);
+            return;
+        }
+        fdrecord(&p->fdch);
+        if ((p->format = (int)*p->iformat) < 1 || p->format > 8) {
+            initerror(Str(X_1335,"unknown format request"));
+            return;
+        }
+        if (p->format == 2 || p->format == 3) {
+            initerror(Str(X_587,"alaw and ulaw not implemented here"));
+            return;
+        }
+        if ((p->timcount = (long)(*p->iprd * ekr)) <= 0)
+            p->timcount = 1;
+        p->countdown = p->timcount;
     }
     else initerror(Str(X_1009,"need quoted filename"));
 }
@@ -117,27 +105,23 @@
 void kdmp4set(KDUMP4 *p)
 {
     if (*p->ifilcod == sstrcod) {       /* open in curdir or pathname */
-      char soundoname[1024];
-      if (p->STRARG == NULL) strcpy(soundoname,unquote(currevent->strarg));
-      else strcpy(soundoname,unquote(p->STRARG));    /* unquote it, else use */
-
-      if ((p->fdch.fd = openout(soundoname,1)) < 0) {
-        sprintf(errmsg,Str(X_210,"Cannot open %s"), soundoname);
-        initerror(errmsg);
-        return;
-      }
-      fdrecord(&p->fdch);
-      if ((p->format = (int)*p->iformat) < 1 || p->format > 8) {
-        initerror(Str(X_1335,"unknown format request"));
-        return;
-      }
-      if (p->format == 2 || p->format == 3) {
-        initerror(Str(X_587,"alaw and ulaw not implemented here"));
-        return;
-      }
-      if ((p->timcount = (long)(*p->iprd * ekr)) <= 0)
-        p->timcount = 1;
-      p->countdown = p->timcount;
+        if ((p->fdch.fd = openout(p->STRARG, 1)) < 0) {
+            sprintf(errmsg,Str(X_210,"Cannot open %s"), retfilnam);
+            initerror(errmsg);
+            return;
+        }
+        fdrecord(&p->fdch);
+        if ((p->format = (int)*p->iformat) < 1 || p->format > 8) {
+            initerror(Str(X_1335,"unknown format request"));
+            return;
+        }
+        if (p->format == 2 || p->format == 3) {
+            initerror(Str(X_587,"alaw and ulaw not implemented here"));
+            return;
+        }
+        if ((p->timcount = (long)(*p->iprd * ekr)) <= 0)
+            p->timcount = 1;
+        p->countdown = p->timcount;
     }
     else initerror(Str(X_1009,"need quoted filename"));
 }
@@ -271,11 +255,8 @@
 void krdset(KREAD *p)
 {
     if (*p->ifilcod == sstrcod) {       /* open in curdir or pathname */
-      char soundiname[1024];
-      if (p->STRARG == NULL) strcpy(soundiname,unquote(currevent->strarg));
-      else strcpy(soundiname,unquote(p->STRARG));    /* unquote it, else use */
-      if ((p->fdch.fd = openin(soundiname)) < 0) {
-        sprintf(errmsg,Str(X_210,"Cannot open %s"), soundiname);
+      if ((p->fdch.fd = openin(p->STRARG)) < 0) {
+        sprintf(errmsg,Str(X_210,"Cannot open %s"), retfilnam);
         initerror(errmsg);
         return;
       }
@@ -302,11 +283,8 @@
 void krd2set(KREAD2 *p)
 {
     if (*p->ifilcod == sstrcod) {       /* open in curdir or pathname */
-      char soundiname[1024];
-      if (p->STRARG == NULL) strcpy(soundiname,unquote(currevent->strarg));
-      else strcpy(soundiname,unquote(p->STRARG));    /* unquote it, else use */
-      if ((p->fdch.fd = openin(soundiname)) < 0) {
-        sprintf(errmsg,Str(X_210,"Cannot open %s"), soundiname);
+      if ((p->fdch.fd = openin(p->STRARG)) < 0) {
+        sprintf(errmsg,Str(X_210,"Cannot open %s"), retfilnam);
         initerror(errmsg);
         return;
       }
@@ -333,11 +311,8 @@
 void krd3set(KREAD3 *p)
 {
     if (*p->ifilcod == sstrcod) {       /* open in curdir or pathname */
-      char soundiname[1024];
-      if (p->STRARG == NULL) strcpy(soundiname,unquote(currevent->strarg));
-      else strcpy(soundiname,unquote(p->STRARG));    /* unquote it, else use */
-      if ((p->fdch.fd = openin(soundiname)) < 0) {
-        sprintf(errmsg,Str(X_210,"Cannot open %s"), soundiname);
+      if ((p->fdch.fd = openin(p->STRARG)) < 0) {
+        sprintf(errmsg,Str(X_210,"Cannot open %s"), retfilnam);
         initerror(errmsg);
         return;
       }
@@ -364,11 +339,8 @@
 void krd4set(KREAD4 *p)
 {
     if (*p->ifilcod == sstrcod) {       /* open in curdir or pathname */
-      char soundiname[1024];
-      if (p->STRARG == NULL) strcpy(soundiname,unquote(currevent->strarg));
-      else strcpy(soundiname,unquote(p->STRARG));    /* unquote it, else use */
-      if ((p->fdch.fd = openin(soundiname)) < 0) {
-        sprintf(errmsg,Str(X_210,"Cannot open %s"), soundiname);
+      if ((p->fdch.fd = openin(p->STRARG)) < 0) {
+        sprintf(errmsg,Str(X_210,"Cannot open %s"), retfilnam);
         initerror(errmsg);
         return;
       }
diff -ur cvs/csound/csound/otran.c proj/csound4_23f12/otran.c
--- cvs/csound/csound/otran.c	2004-07-09 09:34:44.000000000 -0400
+++ proj/csound4_23f12/otran.c	2003-11-29 13:33:21.000000000 -0500
@@ -248,12 +248,6 @@
     displop4 = getopnum("specdisp");
 
     rdorchfile();                               /* go read orch file    */
-    if (pool == NULL) {
-      pool = (MYFLT *)mmalloc((long)NCONSTS * sizeof(MYFLT));
-      *pool = (MYFLT)SSTRCOD;
-      poolcount = 1;
-      nconsts = NCONSTS;
-    }
     while ((tp = getoptxt(&init)) != NULL) {    /*   then for each opcode: */
         unsigned int threads=0;
         int opnum = tp->opnum;
@@ -837,6 +831,12 @@
     MYFLT       *fp;
     char        *str = s;
 
+    if (pool == NULL) {
+      pool = (MYFLT *)mmalloc((long)NCONSTS * sizeof(MYFLT));
+      *pool = (MYFLT)SSTRCOD;
+      poolcount = 1;
+      nconsts = NCONSTS;
+    }
     if (sizeof(MYFLT)==4) {
       if (sscanf(s,"%f",&newval) != 1) goto flerror;
     }
diff -ur cvs/csound/csound/widgets.cpp proj/csound4_23f12/widgets.cpp
--- cvs/csound/csound/widgets.cpp	2004-07-04 17:39:13.000000000 -0400
+++ proj/csound4_23f12/widgets.cpp	2003-11-30 12:27:04.000000000 -0500
@@ -1,27 +1,3 @@
-/*  
-    widgets.cpp:
-
-    Copyright (C) 2002 Gabriel Maldonado
-
-    This file is part of Csound.
-
-    The Csound Library is free software; you can redistribute it
-    and/or modify it under the terms of the GNU Lesser General Public
-    License as published by the Free Software Foundation; either
-    version 2.1 of the License, or (at your option) any later version.
-
-    Csound is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU Lesser General Public License for more details.
-
-    You should have received a copy of the GNU Lesser General Public
-    License along with Csound; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-    02111-1307 USA
-*/
-
-#include "autoheader.h"
 #ifdef _WIN32
 #       pragma warning(disable: 4117 4804)
 #endif
@@ -29,7 +5,10 @@
 #include 
 #include 
 #if defined(WIN32)
-#       include 
+#       include 
+#       include 
+#       include 
+extern int "C" errno; 
 #endif /* defined(WIN32) */
 #if defined(LINUX)
 #       include 
@@ -68,11 +47,7 @@
 
 #include 
 #include 
-
 #include 
-#if defined _WIN32 || defined __CYGWIN__
-#include 
-#endif
 #include 
 
 using namespace std ;
@@ -107,7 +82,7 @@
 // ---- IV - Aug 23 2002 ---- included file: Fl_linux_stubs.cpp
 
 /*
- * $Id: widgets.cpp,v 1.8 2004/07/04 21:39:13 ramsdell Exp $
+ * $Id: Fl_linux_stubs.cpp,v 0.0 2001/05/17 00:17:22 nicb Exp $
  *
  * this is a file used in the linux distribution to be able to use
  * the DirectCsound 5.1 widget code by Gabriel Maldonado on linux
@@ -153,7 +128,7 @@
 
 #include 
 
-char *           /* IV - Sep 8 2002 */
+static char *           /* IV - Sep 8 2002 */
 itoa(int value, char *buffer, int radix)
 {
     const char *r10 = "%d";
@@ -412,9 +387,9 @@
 {
     float x1,y1,x2,y2,rds,cx,cy,ca,sa;
 
-    rds = side / 2.0f;
-    cx = ox + side / 2.0f;
-    cy = oy + side / 2.0f;
+    rds = side / 2;
+    cx = ox + side / 2;
+    cy = oy + side / 2;
     if (!(_type & DOTLOG_3)) {
       if (_scaleticks == 0) return;
       double a_step = (10.0*3.14159/6.0) / _scaleticks;
@@ -470,16 +445,16 @@
     float rds,cur,cx,cy;
     double angle;
 
-    rds = (side - 20.0f) / 2.0f;
-    cur = _percent * rds / 2.0f;
-    cx = ox + side / 2.0f;
-    cy = oy + side / 2.0f;
+    rds = (side - 20) / 2.0;
+    cur = _percent * rds / 2;
+    cx = ox + side / 2;
+    cy = oy + side / 2;
     angle = (a2-a1)*(value()-minimum())/(maximum()-minimum()) + a1;
     fl_push_matrix();
     fl_scale(1,1);
     fl_translate(cx,cy);
     fl_rotate(-angle);
-    fl_translate(0,rds-cur-2.0f);
+    fl_translate(0,rds-cur-2.0);
     if (_type 1.0f) _percent = 1.0f;
@@ -1303,7 +1278,7 @@
             break;
           case EXP_:
             range  = fld.max - fld.min;
-            base = ::pow(fld.max / fld.min, 1/range);
+            base = pow(fld.max / fld.min, 1/range);
             ((Fl_Positioner*) o)->xvalue(log(val/fld.min) / log(base)) ;
             break;
           default:
@@ -1319,7 +1294,7 @@
             break;
           case EXP_:
             range  = fld.max2 - fld.min2;
-            base = ::pow(fld.max2 / fld.min2, 1/range);
+            base = pow(fld.max2 / fld.min2, 1/range);
             ((Fl_Positioner*) o)->yvalue(log(val/fld.min2) / log(base)) ;
             break;
           default:
@@ -1363,7 +1338,7 @@
               break;
             case EXP_:
               range  = p->slider_data[j].max - p->slider_data[j].min;
-              base = ::pow(p->slider_data[j].max / p->slider_data[j].min, 1/range);
+              base = pow(p->slider_data[j].max / p->slider_data[j].min, 1/range);
               ((Fl_Valuator*) grup->child(j))->
                 value(log(val/p->slider_data[j].min) / log(base)) ;
               break;
@@ -1384,7 +1359,7 @@
             break;
           case EXP_:
             range  = fld.max - fld.min;
-            base = ::pow(fld.max / fld.min, 1/range);
+            base = pow(fld.max / fld.min, 1/range);
             ((Fl_Valuator*) o)->value(log(val/fld.min) / log(base)) ;
             break;
           default:
@@ -1473,7 +1448,7 @@
 
 extern "C" void save_snap(FLSAVESNAPS* p)
 {
-#ifdef WIN32
+#ifdef WIN32
     int id = MessageBox( NULL,
                          "Saving could overwrite the old file.\n"
                          "Are you sure to save?",
@@ -1667,7 +1642,7 @@
     for (j=0; j< ss; j++) {
       snapshots[j].fields.erase(snapshots[j].fields.begin(),
                                 snapshots[j].fields.end());
-      snapshots.resize(snapshots.size() + 1);
+      snapshots.resize(snapshots.size()+1);
     }
     if (isActivatedKeyb) {
       delete oKeyb;
@@ -1819,7 +1794,7 @@
 static void fl_callbackExponentialSlider(Fl_Valuator* w, void *a)
 {
     FLSLIDER *p = ((FLSLIDER*) a);
-    displ(*p->kout = p->min * ::pow (p->base, w->value()), *p->idisp);
+    displ(*p->kout = p->min * pow (p->base, w->value()), *p->idisp);
 }
 
 
@@ -1854,7 +1829,7 @@
 static void fl_callbackExponentialSliderBank(Fl_Valuator* w, void *a)
 {
     SLDBK_ELEMENT* p = (SLDBK_ELEMENT*) a;
-    *p->out = p->min * ::pow (p->base, w->value());
+    *p->out = p->min * pow (p->base, w->value());
 }
 
 
@@ -1888,7 +1863,7 @@
         val = j->xvalue();
         break;
       case EXP_:
-        val = *p->iminx * ::pow (p->basex, j->xvalue());
+        val = *p->iminx * pow (p->basex, j->xvalue());
         break;
       default:
         if (iexpx > 0) { //interpolated
@@ -1908,7 +1883,7 @@
         val = j->yvalue();
         break;
       case EXP_:
-        val = *p->iminy * ::pow (p->basey, j->yvalue());
+        val = *p->iminy * pow (p->basey, j->yvalue());
         break;
       default:
         if (iexpy > 0) { //interpolated
@@ -1937,7 +1912,7 @@
 static void fl_callbackExponentialRoller(Fl_Valuator* w, void *a)
 {
     FLROLLER *p = ((FLROLLER*) a);
-    displ(*p->kout = ((FLROLLER*) a)->min * ::pow (p->base, w->value()), *p->idisp);
+    displ(*p->kout = ((FLROLLER*) a)->min * pow (p->base, w->value()), *p->idisp);
 }
 
 
@@ -1970,7 +1945,7 @@
 static void fl_callbackExponentialKnob(Fl_Valuator* w, void *a)
 {
     FLKNOB *p = ((FLKNOB*) a);
-    displ( *p->kout = ((FLKNOB*) a)->min * ::pow (p->base, w->value()), *p->idisp);
+    displ( *p->kout = ((FLKNOB*) a)->min * pow (p->base, w->value()), *p->idisp);
 }
 
 
@@ -2334,7 +2309,7 @@
         break;
       case EXP_: //exponential
         range = v.max-v.min;
-        base = ::pow(v.max / v.min, 1/range);
+        base = pow(v.max / v.min, 1/range);
         val = (log(val/v.min) / log(base)) ;
         break;
       default:
@@ -2715,7 +2690,7 @@
           initerror("FLslider: zero is illegal in exponential operations");
         range = max - min;
         o->range(0,range);
-        p->base = ::pow((max / min), 1/range);
+        p->base = pow((max / min), 1/range);
         o->callback((Fl_Callback*)fl_callbackExponentialSlider,(void *) p);
         break;
       default:
@@ -2885,13 +2860,13 @@
           initerror("FLsliderBank: zero is illegal in exponential operations");
         range = max - min;
         o->range(0,range);
-        p->slider_data[j].base = ::pow((max / min), 1/range);
+        p->slider_data[j].base = pow((max / min), 1/range);
         o->callback((Fl_Callback*)fl_callbackExponentialSliderBank,
                     (void *) &(p->slider_data[j]));
         {
           val = outable[j];
           MYFLT range = max-min;
-          MYFLT base = ::pow(max / min, 1/range);
+          MYFLT base = pow(max / min, 1/range);
           val = (log(val/min) / log(base)) ;
         }
         break;
@@ -2972,7 +2947,7 @@
         initerror("FLjoy X axe: zero is illegal in exponential operations");
       MYFLT range = *p->imaxx - *p->iminx;
       o->xbounds(0,range);
-      p->basex = ::pow((*p->imaxx / *p->iminx), 1/range);
+      p->basex = pow((*p->imaxx / *p->iminx), 1/range);
       } break;
     default:
       {
@@ -3000,7 +2975,7 @@
         initerror("FLjoy X axe: zero is illegal in exponential operations");
       MYFLT range = *p->imaxy - *p->iminy;
       o->ybounds(0,range);
-      p->basey = ::pow((*p->imaxy / *p->iminy), 1/range);
+      p->basey = pow((*p->imaxy / *p->iminy), 1/range);
       } break;
     default:
       {
@@ -3093,7 +3068,7 @@
         initerror("FLknob: zero is illegal in exponential operations");
       MYFLT range = max - min;
       o->range(0,range);
-      p->base = ::pow((max / min), 1/range);
+      p->base = pow((max / min), 1/range);
       o->callback((Fl_Callback*)fl_callbackExponentialKnob,(void *) p);
       } break;
     default:
@@ -3361,7 +3336,7 @@
           initerror("FLslider: zero is illegal in exponential operations");
         MYFLT range = max - min;
         o->range(0,range);
-        p->base = ::pow((max / min), 1/range);
+        p->base = pow((max / min), 1/range);
         o->callback((Fl_Callback*)fl_callbackExponentialRoller,(void *) p);
       }
       break;
@@ -3374,7 +3349,7 @@
           p->tablen = ftp->flen;
         }
         else return;
-        o->range(0,0.99999999);
+        o->range(0,.99999999);
         if (iexp > 0) //interpolated
           o->callback((Fl_Callback*)fl_callbackInterpTableRoller,(void *) p);
         else // non-interpolated

Date2004-08-10 07:29
Fromjpff@codemist.co.uk
Subject[CSOUND-DEV:5169] Re: More 4.23f12 code discrepancies
That fix to dump.c was in the CVS and written 17 July, after 4.23f12
was released.  Fix to otran.c was dated 9 July, also after 4.23f12
Both fixers were committed to CVS; this is clear from the ChangeLog

==John ffitch

Date2004-08-10 13:08
Fromramsdell@mitre.org (John D. Ramsdell)
Subject[CSOUND-DEV:5171] Re: More 4.23f12 code discrepancies
jpff@codemist.co.uk writes:

> That fix to dump.c was in the CVS and written 17 July, after 4.23f12
> was released.  Fix to otran.c was dated 9 July, also after 4.23f12
> Both fixers were committed to CVS; this is clear from the ChangeLog

And the CVS status of these files says your the last one to touch
them, with the exception of widgets.cpp.  I made a tiny patch to
widgets.cpp after yours that simply included fstream and strstream
instead of fstream.h and strstream.h.  I cannot explain what happened,
but it is clear you made an attempt to commit your changes.  Must have
been a gremlin at work.

John

$ sfcvs csound log otran.c widgets.cpp dumpf.c
ramsdell@cvs.sourceforge.net's password: 

RCS file: /cvsroot/csound/csound/csound/otran.c,v
Working file: otran.c
head: 1.2
branch:
locks: strict
access list:
symbolic names:
	csound-4_23f12gbs_2: 1.2
	csound-4_23f12gbs_1: 1.2
	csound-4_23f12gbs_0: 1.1
	csound-4_23f11gbs_0: 1.1
	csound-4_23f10gbs_1: 1.1
	csound-4_23f10gbs_0: 1.1
	csound-4_23f09gbs_1: 1.1
	csound-4_23f09gbs_0: 1.1
	csound-4_23_1: 1.1
	csound-4_23_0: 1.1
	csound-4_23a4: 1.1
	csound-4_23a3: 1.1
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2004/07/09 09:31:50;  author: jpff;  state: Exp;  lines: +6 -6
Fixed bug re strings in orchestra
----------------------------
revision 1.1
date: 2003/11/29 18:33:21;  author: ramsdell;  state: Exp;
move files
=============================================================================

RCS file: /cvsroot/csound/csound/csound/widgets.cpp,v
Working file: widgets.cpp
head: 1.8
branch:
locks: strict
access list:
symbolic names:
	csound-4_23f12gbs_2: 1.8
	csound-4_23f12gbs_1: 1.8
	csound-4_23f12gbs_0: 1.8
	csound-4_23f11gbs_0: 1.7
	csound-4_23f10gbs_1: 1.6
	csound-4_23f10gbs_0: 1.6
	csound-4_23f09gbs_1: 1.6
	csound-4_23f09gbs_0: 1.6
	csound-4_23_1: 1.6
	csound-4_23_0: 1.6
	csound-4_23a4: 1.4
	csound-4_23a3: 1.2
keyword substitution: kv
total revisions: 8;	selected revisions: 8
description:
----------------------------
revision 1.8
date: 2004/07/04 21:39:13;  author: ramsdell;  state: Exp;  lines: +3 -10
Included fstream and strstream instead of fstream.h and strstream.h
----------------------------
revision 1.7
date: 2004/03/04 18:09:37;  author: jpff;  state: Exp;  lines: +5 -5
Bringing into line with 4.23f11
----------------------------
revision 1.6
date: 2003/12/16 10:57:19;  author: ramsdell;  state: Exp;  lines: +2 -2
add _WIN32 back
----------------------------
revision 1.5
date: 2003/12/10 11:21:55;  author: ramsdell;  state: Exp;  lines: +2 -2
fltk on Cygwin
----------------------------
revision 1.4
date: 2003/12/05 15:08:58;  author: bmj2001;  state: Exp;  lines: +2 -2
	Changed from __CYGWIN__ to _WIN32
----------------------------
revision 1.3
date: 2003/12/05 01:05:41;  author: bmj2001;  state: Exp;  lines: +12 -1
Modified for Cygwin with if-defs and endif. Will not harm jpff's compilations
----------------------------
revision 1.2
date: 2003/12/01 11:49:29;  author: ramsdell;  state: Exp;  lines: +3 -9
revert
----------------------------
revision 1.1
date: 2003/11/29 18:33:21;  author: ramsdell;  state: Exp;
move files
=============================================================================

RCS file: /cvsroot/csound/csound/csound/dumpf.c,v
Working file: dumpf.c
head: 1.5
branch:
locks: strict
access list:
symbolic names:
	csound-4_23f12gbs_2: 1.5
	csound-4_23f12gbs_1: 1.5
	csound-4_23f12gbs_0: 1.2
	csound-4_23f11gbs_0: 1.2
	csound-4_23f10gbs_1: 1.1
	csound-4_23f10gbs_0: 1.1
	csound-4_23f09gbs_1: 1.1
	csound-4_23f09gbs_0: 1.1
	csound-4_23_1: 1.1
	csound-4_23_0: 1.1
	csound-4_23a4: 1.1
	csound-4_23a3: 1.1
keyword substitution: kv
total revisions: 5;	selected revisions: 5
description:
----------------------------
revision 1.5
date: 2004/07/17 21:17:26;  author: jpff;  state: Exp;  lines: +4 -4
allow score strings in readk/dumpk
----------------------------
revision 1.4
date: 2004/07/17 21:04:45;  author: jpff;  state: Exp;  lines: +99 -74
allow score strings in readk/dumpk
----------------------------
revision 1.3
date: 2004/07/17 20:45:27;  author: jpff;  state: Exp;  lines: +4 -1
allow score strings in readk
----------------------------
revision 1.2
date: 2004/03/04 18:16:32;  author: jpff;  state: Exp;  lines: +9 -7
Bringing into line with 4.23f11
----------------------------
revision 1.1
date: 2003/11/29 18:33:20;  author: ramsdell;  state: Exp;
move files
=============================================================================
$ 

Date2004-08-10 13:17
Fromramsdell@mitre.org (John D. Ramsdell)
Subject[CSOUND-DEV:5172] Other Csound 4 build news--all's fine on MinGW + MSYS
In other Csound 4 build news, I put the latest copy of MinGW and MSYS
on my Windows 2000 machine, and built FLTK and an FLTK enabled version
of Csound from the sources in csound-4.23f12gbs.2.tar.gz without a
hitch.  It seems to me that MinGW + MSYS is easier to use that Cygwin.

John

Date2004-08-10 13:26
Fromramsdell@mitre.org (John D. Ramsdell)
Subject[CSOUND-DEV:5173] Re: More 4.23f12 code discrepancies
ramsdell@mitre.org (John D. Ramsdell) writes:

> And the CVS status of these files says your the last one to touch
> ... Must have been a gremlin at work.

John, I forgot to ask, would you like me to merge the changes into the
csound module or do you want to do it?  Are there any updates I missed?

John

Date2004-08-10 16:09
Fromjpff@cs.bath.ac.uk
Subject[CSOUND-DEV:5181] Re: More 4.23f12 code discrepancies
Sorry do not understand.  As far as I can see everything is up to date
and always has been apart possibly for widgets.cpp which is always
problematic.   Or was this not addressed to me?
==John ffitch

Date2004-08-10 20:30
FromAnthony Kozar
Subject[CSOUND-DEV:5183] Re: More 4.23f12 code discrepancies
On 8/10/04 8:08 AM, John D. Ramsdell etched in stone:

> jpff@codemist.co.uk writes:
> 
>> That fix to dump.c was in the CVS and written 17 July, after 4.23f12
>> was released.  Fix to otran.c was dated 9 July, also after 4.23f12
>> Both fixers were committed to CVS; this is clear from the ChangeLog
> 
> And the CVS status of these files says your the last one to touch
> them, with the exception of widgets.cpp.  I made a tiny patch to
> widgets.cpp after yours that simply included fstream and strstream
> instead of fstream.h and strstream.h.  I cannot explain what happened,
> but it is clear you made an attempt to commit your changes.  Must have
> been a gremlin at work.
> 
> John

I don't see a problem here.  The changes to dumpf.c and otran.c were made
AFTER the release of 4.23f12.

I checked out a copy of the CVS sources tagged csound-4_23f12gbs_0 which
according to the ChangeLog should correspond exactly with what John ff.
released as version 4.23f12.  I compared these sources with those in
Csound.tar.gz as downloaded from the Sourceforge 4.23f12 release.

I did NOT find any differences in dumpf.c or otran.c, so there is no problem
in those files.

However, I have found several more discrepancies than I reported earlier.
Most notably, the ChangeLogs are VERY different.  Below, I have attached a
copy of the top of the ChangeLog from Csound.tar.gz.  It is clearly much
older than the release supposedly is!

The versions of all_strings and english_strings in Csound.tar.gz also seem
to be seriously out-of-date.  They only contain strings up to 1799, whereas
we should have 1829 now (among other discrepancies).

I also found differences in entry2.c, cwin.cpp, winX11.c, cs.h, rdorch.c (as
mentioned before), widgets.cpp (which everyone acknowledges is different),
and possibly others that I cannot recall right now.  There are also whole
files in John ff.'s release that are not in CVS:  chosc1.h and chosc2.h


To John ff.:  Have you downloaded the 4.23f12 release that you made and
verified that its contents match those of what you uploaded??

If they do not, then perhaps this is a Sourceforge problem due to the fact
that the release file has the same name as previous releases
(Csound.tar.gz).  If they do match, then something is awry on your end.
Some of your files definitely seem to be out-of-date.


Anthony Kozar
anthony.kozar@utoledo.edu
http://akozar.spymac.net/



<<<<<<< ChangeLog
2004-03-03  John ffitch  

    * scxtract.c (scxtract): Added call to sread_init() as suggested
    by Anthony Kozar

2004-02-27  John ffitch  

    * version.h: VERSION 4.23f11

    * insert.c (kperf): Removed call to POLL_EVENTS which was OTT

2004-02-24  John ffitch  

    * dumpf.c (nkread): Reading of text numbers was wrong.

2004-02-20  John ffitch  

    * grain.c (ags): Use memcpy rather than a copy to copy back

2004-02-03  John ffitch  

    * rtlinux.c (recopen_): Removed setting of ishift
    (playopen_): and oshift as not used, and hence getshift is
    removed.

2004-01-29  John ffitch  

    * version.h: VERSION 4.23f10

    * insert.c (ingoto): At matt's suggestion check that the boolean
    is i-time

2004-01-07  John ffitch  

    * insert.c (ingoto): Should set ids not pds

    * ugrw1.c: Changes to sprints so rounding works for negative values

2004-01-01  John ffitch  

    * wavegde.c (filter3Set): Need to initialise filt->x1 and ->x2 to zero

    * flanger.c (wguide2): Avoid frequencies below 5Hz (reciprocal of
    MAXDELAY) 

    * version.h (BUGFIX): fix 8 -- avoiding octal feature!

    * OSC-sock.c: 
    * metro.c: Add casts to avoid warnings

    * flanger.c (wguide1): Avoid frequencies below 5Hz (reciprocal of
    MAXDELAY) 

=======
=======
2004-04-21  John  

    * csound/main.c (mainRESET): Only call rtclose if we have RTAUDIO

>>>>>>> 1.54

Date2004-08-10 20:32
FromAnthony Kozar
Subject[CSOUND-DEV:5184] Re: More 4.23f12 code discrepancies
I would not make any more attempts to "correct" the CVS repository until
John ff. can figure out what differences should and should not be committed.
I have already added changes to rdorch.c which seem suspect and I will undo
them if they are proven so.

Anthony

On 8/10/04 8:26 AM, John D. Ramsdell etched in stone:

> ramsdell@mitre.org (John D. Ramsdell) writes:
> 
>> And the CVS status of these files says your the last one to touch
>> ... Must have been a gremlin at work.
> 
> John, I forgot to ask, would you like me to merge the changes into the
> csound module or do you want to do it?  Are there any updates I missed?
> 
> John
> 

Date2004-08-11 11:29
Fromramsdell@mitre.org (John D. Ramsdell)
Subject[CSOUND-DEV:5190] Re: More 4.23f12 code discrepancies
Okay Anthony, I'll sit tight and not make any changes to the
repository.  You're right that we should let John f. make it exactly
as he wants it to be.

John

Anthony Kozar  writes:

> I would not make any more attempts to "correct" the CVS repository until
> John ff. can figure out what differences should and should not be committed.
> I have already added changes to rdorch.c which seem suspect and I will undo
> them if they are proven so.
> 
> Anthony
> 
> On 8/10/04 8:26 AM, John D. Ramsdell etched in stone:
> 
> > ramsdell@mitre.org (John D. Ramsdell) writes:
> > 
> >> And the CVS status of these files says your the last one to touch
> >> ... Must have been a gremlin at work.
> > 
> > John, I forgot to ask, would you like me to merge the changes into the
> > csound module or do you want to do it?  Are there any updates I missed?
> > 
> > John
> > 

Date2004-08-11 11:30
Fromramsdell@mitre.org (John D. Ramsdell)
Subject[CSOUND-DEV:5191] Re: More 4.23f12 code discrepancies
jpff@cs.bath.ac.uk writes:

> Sorry do not understand.  As far as I can see everything is up to
> date and always has been apart possibly for widgets.cpp which is
> always problematic.  Or was this not addressed to me?

Yes, I was a little confused.  I think Anthony figured out the
situation, so please check out his message on this topic.

John