Martin Vermeer <[EMAIL PROTECTED]> writes:

| On Tue, Sep 16, 2003 at 09:49:52PM +0000, Angus Leeming spake thusly:
|  
>> Martin Vermeer wrote:
>> > Hmmmm... is it possible that lang_ is being accessed after the
>> > containing class Messages::Pimpl has been destroyed?
>> 
>> If so, I guess that this is the kludge. Thereafter we'd have to 
>> ascertain _why_?
>> 
>> string const Messages::get(string const & msg) const
>> {
>>         return pimpl_.get() ? pimpl_->get(msg) : msg;
>> }

And you are sure that this is what happens?

Do we have any static objects? (we shouldn't) Global objects?

| It turns out that the trouble is caused by three localized strings:
>
| 1) in frontends/xforms/dialogs.C the build() routine:
>
|    153     dialog->bc().view(new xformsBC(dialog->bc()));
>
| The call to xformsBC has two default string parameters, see
| frontends/xforms/xformsBC.h:
>
|      22 class xformsBC : public GuiBC<FL_OBJECT, FL_OBJECT> {
|      23 public:
|      24     ///
|      25     xformsBC(ButtonController const &,
|      26          string const & = _("Cancel"), string const & = _("Close"));

this is potentially bad... might be called too early.

| BTW the above kludge does *not* work. No difference. So the
| Messages::Pimpl instantiation is existing, but lang_ is messed up.

And the value of lang_?

-- 
        Lgb

Reply via email to