diff --git a/uppsrc/Draw/ImageOp.cpp b/uppsrc/Draw/ImageOp.cpp index 2c4aa4d5f..0c20e6e2d 100644 --- a/uppsrc/Draw/ImageOp.cpp +++ b/uppsrc/Draw/ImageOp.cpp @@ -991,27 +991,27 @@ Image GaussianBlur(const Image& img, int radius, bool co) for(int j = 0; j <= r; j++) { const RGBA& p = src[i][ri++]; RGBA& q = tmp[i][ti++]; - q.r = (rsum += p.r - fv.r) * avg; - q.g = (gsum += p.g - fv.g) * avg; - q.b = (bsum += p.b - fv.b) * avg; - q.a = (asum += p.a - fv.a) * avg; + q.r = byte((rsum += p.r - fv.r) * avg); + q.g = byte((gsum += p.g - fv.g) * avg); + q.b = byte((bsum += p.b - fv.b) * avg); + q.a = byte((asum += p.a - fv.a) * avg); } for(int j = r + 1; j < sz.cx - r; j++) { const RGBA& p = src[i][ri++]; const RGBA& q = src[i][li++]; RGBA& t = tmp[i][ti++]; - t.r = (rsum += p.r - q.r) * avg; - t.g = (gsum += p.g - q.g) * avg; - t.b = (bsum += p.b - q.b) * avg; - t.a = (asum += p.a - q.a) * avg; + t.r = byte((rsum += p.r - q.r) * avg); + t.g = byte((gsum += p.g - q.g) * avg); + t.b = byte((bsum += p.b - q.b) * avg); + t.a = byte((asum += p.a - q.a) * avg); } for(int j = sz.cx - r; j < sz.cx ; j++) { const RGBA& p = src[i][li++]; RGBA& q = tmp[i][ti++]; - q.r = (rsum += lv.r - p.r) * avg; - q.g = (gsum += lv.g - p.g) * avg; - q.b = (bsum += lv.b - p.b) * avg; - q.a = (asum += lv.a - p.a) * avg; + q.r = byte((rsum += lv.r - p.r) * avg); + q.g = byte((gsum += lv.g - p.g) * avg); + q.b = byte((bsum += lv.b - p.b) * avg); + q.a = byte((asum += lv.a - p.a) * avg); } }; @@ -1042,27 +1042,27 @@ Image GaussianBlur(const Image& img, int radius, bool co) for(int j = 0; j <= r; j++) { const RGBA& p = tmp[ri++][i]; RGBA& q = out[ti++][i]; - q.r = (rsum += p.r - fv.r) * avg; - q.g = (gsum += p.g - fv.g) * avg; - q.b = (bsum += p.b - fv.b) * avg; - q.a = (asum += p.a - fv.a) * avg; + q.r = byte((rsum += p.r - fv.r) * avg); + q.g = byte((gsum += p.g - fv.g) * avg); + q.b = byte((bsum += p.b - fv.b) * avg); + q.a = byte((asum += p.a - fv.a) * avg); } for(int j = r + 1; j < sz.cy - r; j++) { const RGBA& p = tmp[ri++][i]; const RGBA& q = tmp[li++][i]; RGBA& t = out[ti++][i]; - t.r = (rsum += p.r - q.r) * avg; - t.g = (gsum += p.g - q.g) * avg; - t.b = (bsum += p.b - q.b) * avg; - t.a = (asum += p.a - q.a) * avg; + t.r = byte((rsum += p.r - q.r) * avg); + t.g = byte((gsum += p.g - q.g) * avg); + t.b = byte((bsum += p.b - q.b) * avg); + t.a = byte((asum += p.a - q.a) * avg); } for(int j = sz.cy - r; j < sz.cy; j++) { const RGBA& p = tmp[li++][i]; RGBA& q = out[ti++][i]; - q.r = (rsum += lv.r - p.r) * avg; - q.g = (gsum += lv.g - p.g) * avg; - q.b = (bsum += lv.b - p.b) * avg; - q.a = (asum += lv.a - p.a) * avg; + q.r = byte((rsum += lv.r - p.r) * avg); + q.g = byte((gsum += lv.g - p.g) * avg); + q.b = byte((bsum += lv.b - p.b) * avg); + q.a = byte((asum += lv.a - p.a) * avg); } }; diff --git a/uppsrc/ide/Builders/MscBuilder.cpp b/uppsrc/ide/Builders/MscBuilder.cpp index a1f8e4a5e..50d97223d 100644 --- a/uppsrc/ide/Builders/MscBuilder.cpp +++ b/uppsrc/ide/Builders/MscBuilder.cpp @@ -279,10 +279,10 @@ bool MscBuilder::BuildPackage(const String& package, Vector& linkfile, V String cc_size = cc; String cc_speed = cc; - if(!release) - cc << "d " << debug_options; - else + if(release) cc << ' ' << release_options; + else + cc << "d " << debug_options; int recompile = 0; Blitz b; diff --git a/uppsrc/ide/Methods.cpp b/uppsrc/ide/Methods.cpp index 882892dd5..4c2931103 100644 --- a/uppsrc/ide/Methods.cpp +++ b/uppsrc/ide/Methods.cpp @@ -843,10 +843,10 @@ String Ide::GetIncludePath() MergeWith(include, ";", sys_includes); #endif #ifdef PLATFORM_WIN32 - static VectorMap mingw_include; - int q = mingw_include.Find(method); + static VectorMap clang_include; + int q = clang_include.Find(method); if(q < 0) { - String gcc = GetFileOnPath("gcc.exe", bm.Get("PATH", "")); // TODO clang + String gcc = GetFileOnPath("clang.exe", bm.Get("PATH", "")); // TODO clang Index r; if(gcc.GetCount()) { String dummy = ConfigFile("dummy.cpp"); @@ -861,11 +861,12 @@ String Ide::GetIncludePath() String out; if(p.Start(gcc + " -v -x c++ -E " + dummy, environment) && p.Finish(out) == 0) ExtractIncludes(r, out); + DeleteFile(dummy); } - q = mingw_include.GetCount(); - mingw_include.Add(method, Join(r.GetKeys(), ";")); + q = clang_include.GetCount(); + clang_include.Add(method, Join(r.GetKeys(), ";")); } - MergeWith(include, ";", mingw_include[q]); + MergeWith(include, ";", clang_include[q]); #endif if(findarg(bm.Get("BUILDER", ""), "ANDROID") >= 0) { AndroidNDK ndk(bm.Get("NDK_PATH", ""));