[PD-cvs] externals/mrpeach/osc packOSC.c,1.9,1.10

Martin Peach mrpeach at users.sourceforge.net
Sat Oct 20 06:45:45 CEST 2007


Update of /cvsroot/pure-data/externals/mrpeach/osc
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29694

Modified Files:
	packOSC.c 
Log Message:
Modified OSC_writeFloatArg for strict aliasing



Index: packOSC.c
===================================================================
RCS file: /cvsroot/pure-data/externals/mrpeach/osc/packOSC.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** packOSC.c	1 Sep 2007 16:39:26 -0000	1.9
--- packOSC.c	20 Oct 2007 04:45:43 -0000	1.10
***************
*** 1120,1124 ****
  static int OSC_writeFloatArg(OSCbuf *buf, float arg)
  {
!     int4byte *intp;
  
      if(OSC_CheckOverflow(buf, 4))return 1;
--- 1120,1129 ----
  static int OSC_writeFloatArg(OSCbuf *buf, float arg)
  {
!     union intfloat32
!     {
!         int     i;
!         float   f;
!     };
!     union intfloat32 if32;
  
      if(OSC_CheckOverflow(buf, 4))return 1;
***************
*** 1127,1132 ****
  
      /* Pretend arg is a long int so we can use htonl() */
!     intp = ((int4byte *) &arg);
!     *((int4byte *) buf->bufptr) = htonl(*intp);
  
      buf->bufptr += 4;
--- 1132,1138 ----
  
      /* Pretend arg is a long int so we can use htonl() */
!     if32.f = arg;
! 
!     *((int4byte *) buf->bufptr) = htonl(if32.i);
  
      buf->bufptr += 4;





More information about the Pd-cvs mailing list