octave-maintainers
[Top][All Lists]
Advanced

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

Re: Segmentation Fault with Octave MXE under Windows


From: Carnë Draug
Subject: Re: Segmentation Fault with Octave MXE under Windows
Date: Thu, 10 Jul 2014 17:08:36 +0100

On 10 July 2014 16:53, Daniel J Sebald <address@hidden> wrote:
> On 07/10/2014 10:03 AM, Carnë Draug wrote:
> [snip]
>>>
>>> The following may be complete rubbish or related if there's something
>>> related to scope of functions: imformats keeps a persistent struct
>>> with function handles for the private functions within
>>> "m/image/private". This is created during the first call to one of the
>>> image IO functions (imwrite, imread, and imfinfo).
>>
>>
>> It may still be related with this (just not from that specific line).
>> As I mentioned before, imformats() is called for each of the imageIO
>> functions. Try to remove the persistence of the structure it creates
>> internally and see if that fixes it.
>
>
> If removing the persistence does fix the problem, it still isn't the
> ultimate solution because one shouldn't be able to cause a segmentation
> fault by some combination of script commands.

I know. I am not suggesting this as solution, I am just trying to find
the origin of the problem. Let's do one thing at a time.

> Yes, a choice of script
> commands could cause incorrect behavior, but it shouldn't cause a segfault.
>
> Ian, what Carnë is suggesting to try is: edit the file
>
> ./scripts/image/imformats.m
>
> so that the line
>
>   persistent
>
> becomes
>
>   formats = default_formats ();
>
> and the line
>
>   persistent formats = struct ( "coder", {},
>                                 "ext", {},
>                                 "isa", {},
>                                 "info", {},
>                                 "read", {},
>                                 "write", {},
>                                 "alpha", {},
>                                 "description", {},
>                                 "multipage", {});
>
> becomes
>
>   formats = struct ( "coder", {},
>                      "ext", {},
>                      "isa", {},
>                      "info", {},
>                      "read", {},
>                      "write", {},
>                      "alpha", {},
>                      "description", {},
>                      "multipage", {});
>
> Is that right Carnë?

Yes. And if this does not work, try play around if that file until you
can cause the crash. It is very difficult for us to debug this without
actually have a system where to replicate this.

Carnë



reply via email to

[Prev in Thread] Current Thread [Next in Thread]