Strange Rtas crash


#1

Hi,
just found strange crash, may be it is known issue - can’t find something like that on the forum.

I’m using MS Visual Studio 2008 and Juce to build RTAS plugin for windows xp (sp2)
Declaring something like

class Filter : public AudioProcessor
{




private:
std::vector m_vector;
}

crashes PT 8 LE (win) while I trying to load plugin to insert slot of the mixer.
Error is “The plug-in could not be made active because DAE is low on memory (error #-9006)”

m_vector is not used in the code.

After changing to vector - all is going ok…

I don’t think that it is a problem of Juce anyway, but can’t understand what is going on… :oops:


#2

Well, not a juce bug, but it’s intriguing. Presumably it’s something you’re doing with the array later on - maybe you’re doing something with it that relies on a long being the same size as an int?


#3

no,I just added a declaration of vector in class private section.
It is not used in the code =) This is why I called it “strange”


#4

That makes no sense at all! It could only be a compiler bug.

My guess would be that using a vector causes the compiler to get confused between that and a vector<size_t>, because both are the same underlying type. I’ve seen the MS compiler get confused like that before with other templates based on unsigned long and size_t. That might mean that it mis-links your array constructor and produces garbage…

You could just use an Array if that would do the job!