Revision 4f4cc0ef audio/noaudio.c

b/audio/noaudio.c
53 53

  
54 54
    now = qemu_get_clock (vm_clock);
55 55
    ticks = now - no->old_ticks;
56
    bytes = (ticks * hw->info.bytes_per_second) / get_ticks_per_sec();
56
    bytes = muldiv64 (ticks, hw->info.bytes_per_second, get_ticks_per_sec ());
57 57
    bytes = audio_MIN (bytes, INT_MAX);
58 58
    samples = bytes >> hw->info.shift;
59 59

  
......
109 109
    if (dead) {
110 110
        int64_t now = qemu_get_clock (vm_clock);
111 111
        int64_t ticks = now - no->old_ticks;
112
        int64_t bytes = (ticks * hw->info.bytes_per_second) / get_ticks_per_sec();
112
        int64_t bytes =
113
            muldiv64 (ticks, hw->info.bytes_per_second, get_ticks_per_sec ());
113 114

  
114 115
        no->old_ticks = now;
115 116
        bytes = audio_MIN (bytes, INT_MAX);

Also available in: Unified diff