Skip to content

Commit 9278b36

Browse files
committed
Merge branch 'master' into autobuild/alpha_v380
2 parents 1cdcb19 + 55afc36 commit 9278b36

File tree

3 files changed

+19
-16
lines changed

3 files changed

+19
-16
lines changed

source/base/image/dither.cpp

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -315,6 +315,7 @@ DiffusionDither::~DiffusionDither()
315315
{
316316
for (unsigned int i = 0; i < mMatrix.Rows(); ++i)
317317
delete[] maaErrorBuffer[i];
318+
delete[] maaErrorBuffer;
318319
}
319320

320321
void DiffusionDither::GetOffset(unsigned int x, unsigned int y, ColourOffset& offLin, ColourOffset& offQnt)
@@ -396,21 +397,21 @@ DitherStrategySPtr GetDitherStrategy(DitherMethodId method, unsigned int imageWi
396397
DitherStrategySPtr s;
397398
switch (method)
398399
{
399-
case DitherMethodId::kNone: s = std::make_shared<NoDither> ();
400-
case DitherMethodId::kDiffusion1D: s = std::make_shared<DiffusionDither1D> ();
401-
case DitherMethodId::kSierraLite: s = std::make_shared<SierraLiteDither> (imageWidth);
402-
case DitherMethodId::kFloydSteinberg: s = std::make_shared<FloydSteinbergDither> (imageWidth);
403-
case DitherMethodId::kBayer2x2: s = std::make_shared<OrderedDither> (BayerMatrix2, imageWidth);
404-
case DitherMethodId::kBayer3x3: s = std::make_shared<OrderedDither> (BayerMatrix3, imageWidth);
405-
case DitherMethodId::kBayer4x4: s = std::make_shared<OrderedDither> (BayerMatrix4, imageWidth);
406-
case DitherMethodId::kBlueNoise: s = std::make_shared<OrderedDither> (BlueNoise64a, imageWidth);
407-
case DitherMethodId::kBlueNoiseX: s = std::make_shared<OrderedDither> (BlueNoise64a, imageWidth, true);
408-
case DitherMethodId::kAtkinson: s = std::make_shared<DiffusionDither> (AtkinsonMatrix, imageWidth);
409-
case DitherMethodId::kBurkes: s = std::make_shared<DiffusionDither> (BurkesMatrix, imageWidth);
410-
case DitherMethodId::kJarvisJudiceNinke:s = std::make_shared<DiffusionDither> (JarvisJudiceNinkeMatrix, imageWidth);
411-
case DitherMethodId::kSierra3: s = std::make_shared<DiffusionDither> (Sierra3Matrix, imageWidth);
412-
case DitherMethodId::kSierra2: s = std::make_shared<DiffusionDither> (Sierra2Matrix, imageWidth);
413-
case DitherMethodId::kStucki: s = std::make_shared<DiffusionDither> (StuckiMatrix, imageWidth);
400+
case DitherMethodId::kNone: s = std::make_shared<NoDither> (); break;
401+
case DitherMethodId::kDiffusion1D: s = std::make_shared<DiffusionDither1D> (); break;
402+
case DitherMethodId::kSierraLite: s = std::make_shared<SierraLiteDither> (imageWidth); break;
403+
case DitherMethodId::kFloydSteinberg: s = std::make_shared<FloydSteinbergDither> (imageWidth); break;
404+
case DitherMethodId::kBayer2x2: s = std::make_shared<OrderedDither> (BayerMatrix2, imageWidth); break;
405+
case DitherMethodId::kBayer3x3: s = std::make_shared<OrderedDither> (BayerMatrix3, imageWidth); break;
406+
case DitherMethodId::kBayer4x4: s = std::make_shared<OrderedDither> (BayerMatrix4, imageWidth); break;
407+
case DitherMethodId::kBlueNoise: s = std::make_shared<OrderedDither> (BlueNoise64a, imageWidth); break;
408+
case DitherMethodId::kBlueNoiseX: s = std::make_shared<OrderedDither> (BlueNoise64a, imageWidth, true); break;
409+
case DitherMethodId::kAtkinson: s = std::make_shared<DiffusionDither> (AtkinsonMatrix, imageWidth); break;
410+
case DitherMethodId::kBurkes: s = std::make_shared<DiffusionDither> (BurkesMatrix, imageWidth); break;
411+
case DitherMethodId::kJarvisJudiceNinke:s = std::make_shared<DiffusionDither> (JarvisJudiceNinkeMatrix, imageWidth);break;
412+
case DitherMethodId::kSierra3: s = std::make_shared<DiffusionDither> (Sierra3Matrix, imageWidth); break;
413+
case DitherMethodId::kSierra2: s = std::make_shared<DiffusionDither> (Sierra2Matrix, imageWidth); break;
414+
case DitherMethodId::kStucki: s = std::make_shared<DiffusionDither> (StuckiMatrix, imageWidth); break;
414415
}
415416
return s;
416417
}

source/base/version.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@
100100
/// where `N` is a serial number starting at 1 in each phase, `TIME` is the number of minutes
101101
/// since 2000-01-01 00:00, and `FEATURE` is an arbitrary alphanumeric moniker for a particular
102102
/// experimental feature.
103-
#define POV_RAY_PRERELEASE "alpha.9861167"
103+
#define POV_RAY_PRERELEASE "alpha.9893777"
104104

105105
#if defined(DOXYGEN) && !defined(POV_RAY_PRERELEASE)
106106
// Work around doxygen being unable to document undefined macros.

source/parser/parser_tokenizer.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1551,6 +1551,7 @@ void Parser::Read_Symbol()
15511551
c = Echo_getc();
15521552
Echo_ungetc(c);
15531553

1554+
SYM_TABLE* parentTable = table;
15541555
if (pseudoDictionary >= 0)
15551556
{
15561557
table = Tables [pseudoDictionary];
@@ -1600,6 +1601,7 @@ void Parser::Read_Symbol()
16001601
else
16011602
{
16021603
breakLoop = true;
1604+
table = parentTable;
16031605
break;
16041606
}
16051607

0 commit comments

Comments
 (0)