Revision: 9589 http://pure-data.svn.sourceforge.net/pure-data/?rev=9589&view=rev Author: millerpuckette Date: 2008-03-16 12:12:49 -0700 (Sun, 16 Mar 2008)
Log Message: ----------- 0.41-2 release
Modified Paths: -------------- trunk/pd/doc/1.manual/x5.htm trunk/pd/src/g_io.c trunk/pd/src/m_obj.c trunk/pd/src/m_pd.h trunk/pd/src/s_audio_mmio.c trunk/pd/src/s_inter.c trunk/pd/src/s_path.c trunk/pd/src/u_main.tk trunk/pd/src/u_pdsend.c trunk/pd/src/x_net.c
Modified: trunk/pd/doc/1.manual/x5.htm =================================================================== --- trunk/pd/doc/1.manual/x5.htm 2008-03-16 18:37:47 UTC (rev 9588) +++ trunk/pd/doc/1.manual/x5.htm 2008-03-16 19:12:49 UTC (rev 9589) @@ -20,9 +20,14 @@
<H3> <A name="s2"> 5.1. release notes </A> </H3>
+<P> ------------------ 0.41-2 ---------------------------- + +<P> More bug fixes: large netsends dropping messages, and crash bug when turning +DSP on and off repeatedly in MS windows + <P> ------------------ 0.41-1 ----------------------------
-Fixed a startup problem for Mac OSX 10.5.1 (other platforms should not be affected) +<P> Fixed a startup problem for Mac OSX 10.5.1 (other platforms should not be affected)
<P> ------------------ 0.41 ----------------------------
Modified: trunk/pd/src/g_io.c =================================================================== --- trunk/pd/src/g_io.c 2008-03-16 18:37:47 UTC (rev 9588) +++ trunk/pd/src/g_io.c 2008-03-16 19:12:49 UTC (rev 9589) @@ -168,6 +168,9 @@ int downsample, int upsample, int reblock, int switched) { t_signal *insig, *outsig; + /* no buffer means we're not a signal inlet */ + if (!x->x_buf) + return; x->x_updown.downsample = downsample; x->x_updown.upsample = upsample;
@@ -435,6 +438,9 @@ int myvecsize, int calcsize, int phase, int period, int frequency, int downsample, int upsample, int reblock, int switched) { + /* no buffer means we're not a signal outlet */ + if (!x->x_buf) + return; x->x_updown.downsample=downsample; x->x_updown.upsample=upsample; x->x_justcopyout = (switched && !reblock);
Modified: trunk/pd/src/m_obj.c =================================================================== --- trunk/pd/src/m_obj.c 2008-03-16 18:37:47 UTC (rev 9588) +++ trunk/pd/src/m_obj.c 2008-03-16 19:12:49 UTC (rev 9589) @@ -687,6 +687,8 @@ { int n = 0; t_inlet *i; + if (x->i_symfrom != &s_signal) + bug("inlet_getsignalindex"); for (i = x->i_owner->ob_inlet, n = 0; i && i != x; i = i->i_next) if (i->i_symfrom == &s_signal) n++; return (n);
Modified: trunk/pd/src/m_pd.h =================================================================== --- trunk/pd/src/m_pd.h 2008-03-16 18:37:47 UTC (rev 9588) +++ trunk/pd/src/m_pd.h 2008-03-16 19:12:49 UTC (rev 9589) @@ -10,7 +10,7 @@
#define PD_MAJOR_VERSION 0 #define PD_MINOR_VERSION 41 -#define PD_BUGFIX_VERSION 1 +#define PD_BUGFIX_VERSION 2 #define PD_TEST_VERSION ""
/* old name for "MSW" flag -- we have to take it for the sake of many old
Modified: trunk/pd/src/s_audio_mmio.c =================================================================== --- trunk/pd/src/s_audio_mmio.c 2008-03-16 18:37:47 UTC (rev 9588) +++ trunk/pd/src/s_audio_mmio.c 2008-03-16 19:12:49 UTC (rev 9589) @@ -709,7 +709,7 @@ nbuf = MAXBUFFER; } else if (nbuf < 4) nbuf = 4; - fprintf(stderr, "%d audio buffers\n", nbuf); + /* fprintf(stderr, "%d audio buffers\n", nbuf); */ nt_naudiobuffer = nbuf; if (nt_adcjitterbufsallowed > nbuf - 2) nt_adcjitterbufsallowed = nbuf - 2;
Modified: trunk/pd/src/s_inter.c =================================================================== --- trunk/pd/src/s_inter.c 2008-03-16 18:37:47 UTC (rev 9588) +++ trunk/pd/src/s_inter.c 2008-03-16 19:12:49 UTC (rev 9589) @@ -418,12 +418,12 @@ static int socketreceiver_doread(t_socketreceiver *x) { char messbuf[INBUFSIZE], *bp = messbuf; - int indx; + int indx, first = 1; int inhead = x->sr_inhead; int intail = x->sr_intail; char *inbuf = x->sr_inbuf; - if (intail == inhead) return (0); - for (indx = intail; indx != inhead; indx = (indx+1)&(INBUFSIZE-1)) + for (indx = intail; first || (indx != inhead); + first = 0, (indx = (indx+1)&(INBUFSIZE-1))) { /* if we hit a semi that isn't preceeded by a , it's a message boundary. LATER we should deal with the possibility that the @@ -544,6 +544,8 @@ if (x->sr_socketreceivefn) (*x->sr_socketreceivefn)(x->sr_owner, inbinbuf); else binbuf_eval(inbinbuf, 0, 0, 0); + if (x->sr_inhead == x->sr_intail) + break; } } }
Modified: trunk/pd/src/s_path.c =================================================================== --- trunk/pd/src/s_path.c 2008-03-16 18:37:47 UTC (rev 9588) +++ trunk/pd/src/s_path.c 2008-03-16 19:12:49 UTC (rev 9589) @@ -531,7 +531,7 @@ int i; t_namelist *nl;
- sys_vgui("pd_set pd_path ""\n"); + sys_gui("global pd_path; set pd_path {}\n"); for (nl = sys_searchpath, i = 0; nl; nl = nl->nl_next, i++) sys_vgui("lappend pd_path "%s"\n", nl->nl_string); sprintf(buf, "pdtk_path_dialog %%s %d %d\n", sys_usestdpath, sys_verbose); @@ -561,7 +561,7 @@ int i; t_namelist *nl;
- sys_vgui("pd_set pd_startup ""\n"); + sys_gui("global pd_startup; set pd_startup {}\n"); for (nl = sys_externlist, i = 0; nl; nl = nl->nl_next, i++) sys_vgui("lappend pd_startup "%s"\n", nl->nl_string); sprintf(buf, "pdtk_startup_dialog %%s %d "%s"\n", sys_defeatrt,
Modified: trunk/pd/src/u_main.tk =================================================================== --- trunk/pd/src/u_main.tk 2008-03-16 18:37:47 UTC (rev 9588) +++ trunk/pd/src/u_main.tk 2008-03-16 19:12:49 UTC (rev 9589) @@ -3517,7 +3517,7 @@ proc pdtk_pastetext {} { global pdtk_pastebuffer set pdtk_pastebuffer "" - catch {global pdtk_pastebuffer; set pdtk_pastebuffer [selection get]} + catch {global pdtk_pastebuffer; set pdtk_pastebuffer [clipboard get]} # puts stderr [concat paste $pdtk_pastebuffer] for {set i 0} {$i < [string length $pdtk_pastebuffer]} {incr i 1} { set cha [string index $pdtk_pastebuffer $i]
Modified: trunk/pd/src/u_pdsend.c =================================================================== --- trunk/pd/src/u_pdsend.c 2008-03-16 18:37:47 UTC (rev 9588) +++ trunk/pd/src/u_pdsend.c 2008-03-16 19:12:49 UTC (rev 9589) @@ -112,7 +112,7 @@ nsend = strlen(buf); for (bp = buf, nsent = 0; nsent < nsend;) { - int res = send(sockfd, buf, nsend-nsent, 0); + int res = send(sockfd, bp, nsend-nsent, 0); if (res < 0) { sockerror("send");
Modified: trunk/pd/src/x_net.c =================================================================== --- trunk/pd/src/x_net.c 2008-03-16 18:37:47 UTC (rev 9588) +++ trunk/pd/src/x_net.c 2008-03-16 19:12:49 UTC (rev 9589) @@ -129,7 +129,7 @@ static double lastwarntime; static double pleasewarn; double timebefore = sys_getrealtime(); - int res = send(x->x_fd, buf, length-sent, 0); + int res = send(x->x_fd, bp, length-sent, 0); double timeafter = sys_getrealtime(); int late = (timeafter - timebefore > 0.005); if (late || pleasewarn)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.