About the old burn-speed-at-max bug



Hi,

i would like to bring the attention to a suspicious gesture
in the libburn plugin of Brasero which is to see at

  https://git.gnome.org/browse/brasero/tree/plugins/libburnia/burn-libburn.c#n558

I suspect that it is responsible for various bug reports
about burn speed being always at maximum. E.g.
  https://bugs.launchpad.net/ubuntu/+source/brasero/+bug/656297

This line obviously gets a number out of brasero's state:

    brasero_job_get_rate (BRASERO_JOB (self), &rate);

This line hands over the number to libburn as read speed,
and orders maximum write speed by value 0:

    burn_drive_set_speed (priv->ctx->drive, rate, 0);

It should obviously be

    burn_drive_set_speed (priv->ctx->drive, 0, rate);

Quoting my predecessors and myself from 
  http://libburnia-project.org/browser/libburn/trunk/libburn/libburn.h

  /** Sets drive read and write speed
      Note: "k" is 1000, not 1024. 1xCD = 176.4 k/s, 1xDVD = 1385 k/s.
            Fractional speeds should be rounded up. Like 4xCD = 706.
      @param d The drive to set speed for
      @param read Read speed in k/s (0 is max, -1 is min).
      @param write Write speed in k/s (0 is max, -1 is min).
  */
  void burn_drive_set_speed(struct burn_drive *d, int read, int write);


As we are at it, how about a log line like this one ?

  BRASERO_JOB_LOG (BRASERO_JOB (self), "Setting libburn write speed to %d", rate);

 
Have a nice day :)

Thomas



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]