Browse Source

Workarounds for a couple of MSVC quirks.

tags/2021-05-28
jules 11 years ago
parent
commit
e449f1a8af
2 changed files with 23 additions and 22 deletions
  1. +1
    -0
      modules/juce_core/network/juce_URL.h
  2. +22
    -22
      modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.cpp

+ 1
- 0
modules/juce_core/network/juce_URL.h View File

@@ -360,6 +360,7 @@ private:
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (Upload)
};
friend struct ContainerDeletePolicy<Upload>;
ReferenceCountedArray<Upload> filesToUpload;
URL (const String&, int);


+ 22
- 22
modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.cpp View File

@@ -85,28 +85,6 @@ struct CachedImageList : public ReferenceCountedObject,
return c->getTextureInfo();
}
typedef ReferenceCountedObjectPtr<CachedImageList> Ptr;
private:
void imageDataChanged (ImagePixelData* im) override
{
if (CachedImage* c = findCachedImage (im))
c->texture.release();
}
void imageDataBeingDeleted (ImagePixelData* im) override
{
for (int i = images.size(); --i >= 0;)
{
if (images.getUnchecked(i)->pixelData == im)
{
totalSize -= images.getUnchecked(i)->imageSize;
images.remove (i);
break;
}
}
}
struct CachedImage
{
CachedImage (CachedImageList& list, ImagePixelData* im)
@@ -150,6 +128,28 @@ private:
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (CachedImage)
};
typedef ReferenceCountedObjectPtr<CachedImageList> Ptr;
private:
void imageDataChanged (ImagePixelData* im) override
{
if (CachedImage* c = findCachedImage (im))
c->texture.release();
}
void imageDataBeingDeleted (ImagePixelData* im) override
{
for (int i = images.size(); --i >= 0;)
{
if (images.getUnchecked(i)->pixelData == im)
{
totalSize -= images.getUnchecked(i)->imageSize;
images.remove (i);
break;
}
}
}
OwnedArray<CachedImage> images;
size_t totalSize, maxCacheSize;


Loading…
Cancel
Save