--- xinetd-2.3.13/xinetd/service.c 2005-02-17 15:06:47.000000000 -0500 +++ service.c.gcc4 2005-02-17 15:06:27.000000000 -0500 @@ -770,8 +770,8 @@ return FAILED; if ( last == NULL ) { - last = SAIN( SVC_LAST_DGRAM_ADDR(sp) ) = - SAIN( calloc( 1, sizeof(union xsockaddr) ) ); + SVC_LAST_DGRAM_ADDR(sp) = calloc( 1, sizeof(union xsockaddr) ); + last = SAIN(SVC_LAST_DGRAM_ADDR(sp)); } (void) time( ¤t_time ) ; @@ -797,8 +797,8 @@ return FAILED; if( last == NULL ) { - last = SAIN6(SVC_LAST_DGRAM_ADDR(sp)) = - SAIN6(calloc( 1, sizeof(union xsockaddr) ) ); + SVC_LAST_DGRAM_ADDR(sp) = calloc( 1, sizeof(union xsockaddr) ); + last = SAIN6( SVC_LAST_DGRAM_ADDR(sp) ); } (void) time( ¤t_time ) ;