Fix Linux builds
This commit is contained in:
parent
9fbe14e2de
commit
42af001020
@ -82,7 +82,7 @@ namespace nana{ namespace paint
|
|||||||
return false;
|
return false;
|
||||||
|
|
||||||
std::unique_ptr<char[]> buffer(new char[static_cast<int>(size)]);
|
std::unique_ptr<char[]> buffer(new char[static_cast<int>(size)]);
|
||||||
|
|
||||||
ifs.read(buffer.get(), size);
|
ifs.read(buffer.get(), size);
|
||||||
if(size == ifs.gcount())
|
if(size == ifs.gcount())
|
||||||
{
|
{
|
||||||
@ -94,7 +94,7 @@ namespace nana{ namespace paint
|
|||||||
|
|
||||||
//Bitmap file is 4byte-aligned for each line.
|
//Bitmap file is 4byte-aligned for each line.
|
||||||
std::size_t bytes_per_line;
|
std::size_t bytes_per_line;
|
||||||
const std::size_t height_pixels = abs(info->bmiHeader.biHeight);
|
const std::size_t height_pixels = std::abs(info->bmiHeader.biHeight);
|
||||||
if(0 == info->bmiHeader.biSizeImage)
|
if(0 == info->bmiHeader.biSizeImage)
|
||||||
bytes_per_line = (((info->bmiHeader.biWidth * info->bmiHeader.biBitCount + 31) & ~31) >> 3);
|
bytes_per_line = (((info->bmiHeader.biWidth * info->bmiHeader.biBitCount + 31) & ~31) >> 3);
|
||||||
else
|
else
|
||||||
@ -204,7 +204,7 @@ namespace nana{ namespace paint
|
|||||||
d = dpend;
|
d = dpend;
|
||||||
s -= bytes_per_line;
|
s -= bytes_per_line;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(2 == info->bmiHeader.biBitCount)
|
else if(2 == info->bmiHeader.biBitCount)
|
||||||
{
|
{
|
||||||
@ -257,7 +257,7 @@ namespace nana{ namespace paint
|
|||||||
d = dpend;
|
d = dpend;
|
||||||
s -= bytes_per_line;
|
s -= bytes_per_line;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(1 == info->bmiHeader.biBitCount)
|
else if(1 == info->bmiHeader.biBitCount)
|
||||||
{
|
{
|
||||||
@ -310,7 +310,7 @@ namespace nana{ namespace paint
|
|||||||
d = dpend;
|
d = dpend;
|
||||||
s -= bytes_per_line;
|
s -= bytes_per_line;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -18,11 +18,11 @@ namespace nana
|
|||||||
//overlap test if overlaped between r1 and r2
|
//overlap test if overlaped between r1 and r2
|
||||||
bool overlap(const rectangle& r1, const rectangle& r2)
|
bool overlap(const rectangle& r1, const rectangle& r2)
|
||||||
{
|
{
|
||||||
if (r1.y + long long(r1.height) <= r2.y) return false;
|
if (r1.y + (long long)(r1.height) <= r2.y) return false;
|
||||||
if(r1.y >= r2.y + long long(r2.height)) return false;
|
if(r1.y >= r2.y + (long long)(r2.height)) return false;
|
||||||
|
|
||||||
if(r1.x + long long(r1.width) <= r2.x) return false;
|
if(r1.x + (long long)(r1.width) <= r2.x) return false;
|
||||||
if(r1.x >= r2.x + long long(r2.width)) return false;
|
if(r1.x >= r2.x + (long long)(r2.width)) return false;
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -255,7 +255,7 @@ namespace nana
|
|||||||
ref_s.width = static_cast<unsigned>(ref_s.height * rate_input);
|
ref_s.width = static_cast<unsigned>(ref_s.height * rate_input);
|
||||||
else if (rate_input > rate_ref)
|
else if (rate_input > rate_ref)
|
||||||
ref_s.height = static_cast<unsigned>(ref_s.width / rate_input);
|
ref_s.height = static_cast<unsigned>(ref_s.width / rate_input);
|
||||||
|
|
||||||
return ref_s;
|
return ref_s;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user