diff -aur lletters-0.1.95+gtk2/libqdwav/wav_read.c lletters-0.1.95+gtk2-new/libqdwav/wav_read.c --- lletters-0.1.95+gtk2/libqdwav/wav_read.c 2000-02-21 09:53:08.000000000 +0200 +++ lletters-0.1.95+gtk2-new/libqdwav/wav_read.c 2013-02-27 03:11:24.000000000 +0200 @@ -5,6 +5,8 @@ #include #include "wav_lib.h" +#include +#include /* wav header is 44 bytes long */ @@ -26,16 +28,16 @@ /* sample rate */ long get_wav_srate(wav_sig *info){ - return(*(long *)&info->head[24]); + return(*(uint32_t *)&info->head[24]); } /* # of bytes/sec processed (for buffer estimation) */ long get_wav_bps(wav_sig *info){ - return(*(long *)&info->head[28]); + return(*(uint32_t *)&info->head[28]); } /* minimum # of bytes per block for correct processing */ short get_wav_blkalign(wav_sig *info){ - return (*(long *)&info->head[32]); + return (*(short *)&info->head[32]); } /* sample depth (8bit or 16bit) */ @@ -45,18 +47,18 @@ /* data section only == totalfile - 44 */ long get_wav_len(wav_sig *info){ - return (*(long *)&info->head[40]); + return (*(uint32_t *)&info->head[40]); } int init_wav_read(char file_name[], wav_sig *info){ info->handle = open_wav(info->head, file_name); if(strlen(file_name) > 30) { - strncpy(info->name,file_name,26); + strncpy(info->name,file_name,27); info->name[27]='\0'; strcat(info->name,"..."); }else{ - strncpy(info->name,file_name,29); + strncpy(info->name,file_name,30); info->name[30]='\0'; } info->chans = get_wav_channels(info);