[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: changing a function pointer in a module
From: |
Robert Millan |
Subject: |
Re: changing a function pointer in a module |
Date: |
Sat, 7 Feb 2009 22:10:53 +0100 |
User-agent: |
Mutt/1.5.13 (2006-08-11) |
On Fri, Jan 16, 2009 at 10:28:12PM +0100, Carles Pina i Estany wrote:
>
> Hello,
>
> I'm doing some more gettext stuff. Right now I have (relevant code for
> the problem):
>
> (briefly: the problem is that I'm changing a function pointer inside
> gettext module code and it's not changed in other parts in Grub, even
> when it's defined in include/grub/misc.h and only there)
>
> include/grub/misc.h:
> char* EXPORT_FUNC(grub_gettext_dummy) (const char *s);
> char* EXPORT_FUNC((*grub_gettext)) (const char *s);
>
> (I've done tests without EXPORT_FUNC and with EXPORT_VAR for
> grub_gettext)
>
> In normal/main.c, GRUB_MOD_INIT(normal) I have:
> grub_gettext = grub_gettext_dummy;
>
> In normal/cmdline.c, in grub_cmdline_run and after "ESC at any time
> exits":
> grub_printf("grub_gettext: %d\n",grub_gettext);
>
> In gettext/gettext.c, GRUB_MOD_INIT(gettext):
> grub_gettext = grub_gettext_translate;
> grub_printf("grub_gettext: %d\n",grub_gettext);
>
> First time that I type "C" in Grub menu, I read grub_gettext: XXXX.
>
> Then I insmod my module and it prints grub_printf("grub_gettext:
> %d\n",grub_gettext); (different value, of course).
>
> I press ESC (to go to Grub menu) and C (to go to the command line) and I
> get the first grub_gettext value, not the one that I changed.
>
> How so? I don't declare grub_gettext again, how I can change (and check
> that it's changed) but not changed back?
>
> I even tried to not assign in normal/main.c (just in case that code part
> is executed two times) but still it didn't work (again, value has not
> been changed).
IIRC we sorted out these issues in our meeting, please let me know if something
is missing.
--
Robert Millan
The DRM opt-in fallacy: "Your data belongs to us. We will decide when (and
how) you may access your data; but nobody's threatening your freedom: we
still allow you to remove your data and not access it at all."
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: changing a function pointer in a module,
Robert Millan <=