Release procedure
Roland Illig
roland.illig at gmx.de
Tue Jun 7 14:27:31 UTC 2005
Jindrich Novy wrote:
> --- mc-4.6.1a/src/widget.c.fixes 2005-06-06 15:08:52.202559824 +0200
> +++ mc-4.6.1a/src/widget.c 2005-06-06 15:08:29.120068896 +0200
> @@ -2363,7 +2363,7 @@ buttonbar_set_label_data (Dlg_head *h, i
> void
> buttonbar_set_label (Dlg_head *h, int idx, const char *text, void (*cback) (void))
> {
> - buttonbar_set_label_data (h, idx, text, cback, 0);
> + buttonbar_set_label_data (h, idx, text, (buttonbarfn)cback, 0);
I will fix this in a minute, but sadly the _correct_ fix is not as
trivial. Here we are converting completely unrelated function pointers,
which is quite dangerous in case the function prototypes change or in
case we use another compiler. The C standard states this as "undefined
behavior".
> --- mc-4.6.1a/src/command.c.fixes 2005-05-27 05:35:15.000000000 +0200
> +++ mc-4.6.1a/src/command.c 2005-06-06 15:07:38.228805544 +0200
> @@ -280,7 +280,7 @@ command_callback (Widget *w, widget_msg_
> /* fall through */
>
> default:
> - return input_callback (cmd, msg, parm);
> + return input_callback (w, msg, parm);
Fixed. That was trivial.
Roland
More information about the mc-devel
mailing list