Skip to content

Commit bed9851

Browse files
authored
Merge pull request #58 from dscho/fix-compiler-warnings
Fix compiler warnings
2 parents eb37f79 + c75de11 commit bed9851

9 files changed

+30
-25
lines changed

CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ if (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
3737
set(CMAKE_CXX_FLAGS "-Wall -Wparentheses -Winline -Wbad-function-cast -Wdisabled-optimization -Wextra")
3838
else()
3939
message(STATUS "MSVC compiler in use")
40-
set(CMAKE_CXX_FLAGS "/Wall /W4")
40+
set(CMAKE_CXX_FLAGS "/Wall /W4 /EHsc")
4141
endif()
4242

4343
add_compile_definitions(NAPI_CPP_EXCEPTIONS)

src/MMBitmap.c

+1
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ void destroyMMBitmap(MMBitmapRef bitmap)
3636

3737
void destroyMMBitmapBuffer(char * bitmapBuffer, void * hint)
3838
{
39+
(void)hint;
3940
if (bitmapBuffer != NULL)
4041
{
4142
free(bitmapBuffer);

src/MMBitmap.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ MMBitmapRef copyMMBitmapFromPortion(MMBitmapRef source, MMRect rect);
4747
#define MMBitmapPointInBounds(image, p) ((p).x < (image)->width && \
4848
(p).y < (image)->height)
4949
#define MMBitmapRectInBounds(image, r) \
50-
(((r).origin.x + (r).size.width <= (image)->width) && \
51-
((r).origin.y + (r).size.height <= (image)->height))
50+
(((r).origin.x + (r).size.width <= (int64_t)(image)->width) && \
51+
((r).origin.y + (r).size.height <= (int64_t)(image)->height))
5252

5353
#define MMBitmapGetBounds(image) MMRectMake(0, 0, image->width, image->height)
5454

src/buffer_finalizer.h

+1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ class BufferFinalizer
44
public:
55
void operator()(Napi::Env env, T *data)
66
{
7+
(void)env;
78
if (data != nullptr)
89
{
910
delete data;

src/deadbeef_rand.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,5 @@ uint32_t deadbeef_generate_seed(void)
2323
{
2424
uint32_t t = (uint32_t)time(NULL);
2525
uint32_t c = (uint32_t)clock();
26-
return (t << 24) ^ (c << 11) ^ t ^ (size_t) &c;
26+
return (uint32_t)((t << 24) ^ (c << 11) ^ t ^ (size_t) &c);
2727
}

src/main.cc

+15-15
Original file line numberDiff line numberDiff line change
@@ -496,7 +496,7 @@ Napi::Number _keyToggle(const Napi::CallbackInfo &info)
496496
MMKeyFlags flags = MOD_NONE;
497497
MMKeyCode key;
498498

499-
bool down;
499+
bool down = false;
500500

501501
//Get arguments from JavaScript.
502502
std::string keyName = info[0].As<Napi::String>();
@@ -576,7 +576,7 @@ Napi::Number _typeStringDelayed(const Napi::CallbackInfo &info)
576576
std::string stringToType = info[0].As<Napi::String>();
577577
size_t cpm = info[1].As<Napi::Number>().Int32Value();
578578

579-
typeStringDelayed(stringToType.c_str(), cpm);
579+
typeStringDelayed(stringToType.c_str(), (unsigned int)cpm);
580580

581581
return Napi::Number::New(env, 1);
582582
}
@@ -613,8 +613,8 @@ Napi::Object _getScreenSize(const Napi::CallbackInfo &info)
613613

614614
//Create our return object.
615615
Napi::Object obj = Napi::Object::New(env);
616-
obj.Set(Napi::String::New(env, "width"), Napi::Number::New(env, displaySize.width));
617-
obj.Set(Napi::String::New(env, "height"), Napi::Number::New(env, displaySize.height));
616+
obj.Set(Napi::String::New(env, "width"), Napi::Number::New(env, (double)displaySize.width));
617+
obj.Set(Napi::String::New(env, "height"), Napi::Number::New(env, (double)displaySize.height));
618618

619619
return obj;
620620
}
@@ -660,7 +660,7 @@ Napi::Number _highlight(const Napi::CallbackInfo &info)
660660
y = info[1].As<Napi::Number>().Int32Value();
661661
width = info[2].As<Napi::Number>().Int32Value();
662662
height = info[3].As<Napi::Number>().Int32Value();
663-
duration = info[4].As<Napi::Number>().Int64Value();
663+
duration = (int)info[4].As<Napi::Number>().Int64Value();
664664
opacity = info[5].As<Napi::Number>().FloatValue();
665665

666666
highlight(x, y, width, height, duration, opacity);
@@ -673,7 +673,7 @@ Napi::Number _getActiveWindow(const Napi::CallbackInfo &info) {
673673
Napi::Env env = info.Env();
674674

675675
WindowHandle windowHandle = getActiveWindow();
676-
return Napi::Number::New(env, windowHandle);
676+
return Napi::Number::New(env, (double)windowHandle);
677677
}
678678

679679
Napi::Array _getWindows(const Napi::CallbackInfo &info) {
@@ -683,7 +683,7 @@ Napi::Array _getWindows(const Napi::CallbackInfo &info) {
683683
auto arr = Napi::Array::New(env, windowHandles.size());
684684

685685
for (size_t idx = 0; idx < windowHandles.size(); ++idx) {
686-
arr[idx] = windowHandles[idx];
686+
arr[(uint32_t)idx] = windowHandles[idx];
687687
}
688688

689689
return arr;
@@ -696,10 +696,10 @@ Napi::Object _getWindowRect(const Napi::CallbackInfo &info) {
696696
MMRect windowRect = getWindowRect(windowHandle);
697697

698698
Napi::Object obj = Napi::Object::New(env);
699-
obj.Set(Napi::String::New(env, "x"), Napi::Number::New(env, windowRect.origin.x));
700-
obj.Set(Napi::String::New(env, "y"), Napi::Number::New(env, windowRect.origin.y));
701-
obj.Set(Napi::String::New(env, "width"), Napi::Number::New(env, windowRect.size.width));
702-
obj.Set(Napi::String::New(env, "height"), Napi::Number::New(env, windowRect.size.height));
699+
obj.Set(Napi::String::New(env, "x"), Napi::Number::New(env, (double)windowRect.origin.x));
700+
obj.Set(Napi::String::New(env, "y"), Napi::Number::New(env, (double)windowRect.origin.y));
701+
obj.Set(Napi::String::New(env, "width"), Napi::Number::New(env, (double)windowRect.size.width));
702+
obj.Set(Napi::String::New(env, "height"), Napi::Number::New(env, (double)windowRect.size.height));
703703

704704
return obj;
705705
}
@@ -763,13 +763,13 @@ Napi::Object _captureScreen(const Napi::CallbackInfo &info)
763763
throw Napi::Error::New(env, "Error: Failed to capture screen");
764764
}
765765

766-
uint32_t bufferSize = bitmap->bytewidth * bitmap->height;
766+
uint32_t bufferSize = (uint32_t)(bitmap->bytewidth * bitmap->height);
767767
Napi::Buffer<char> buffer = Napi::Buffer<char>::New(env, (char *)bitmap->imageBuffer, bufferSize, finalizer);
768768

769769
Napi::Object obj = Napi::Object::New(env);
770-
obj.Set(Napi::String::New(env, "width"), Napi::Number::New(env, bitmap->width));
771-
obj.Set(Napi::String::New(env, "height"), Napi::Number::New(env, bitmap->height));
772-
obj.Set(Napi::String::New(env, "byteWidth"), Napi::Number::New(env, bitmap->bytewidth));
770+
obj.Set(Napi::String::New(env, "width"), Napi::Number::New(env, (double)bitmap->width));
771+
obj.Set(Napi::String::New(env, "height"), Napi::Number::New(env, (double)bitmap->height));
772+
obj.Set(Napi::String::New(env, "byteWidth"), Napi::Number::New(env, (double)bitmap->bytewidth));
773773
obj.Set(Napi::String::New(env, "bitsPerPixel"), Napi::Number::New(env, bitmap->bitsPerPixel));
774774
obj.Set(Napi::String::New(env, "bytesPerPixel"), Napi::Number::New(env, bitmap->bytesPerPixel));
775775
obj.Set(Napi::String::New(env, "image"), buffer);

src/win32/keypress.c

+5-3
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ void win32KeyEvent(int key, MMKeyFlags flags)
6161

6262
INPUT keyboardInput;
6363
keyboardInput.type = INPUT_KEYBOARD;
64-
keyboardInput.ki.wScan = scan;
64+
keyboardInput.ki.wScan = (WORD)scan;
6565
keyboardInput.ki.dwFlags = KEYEVENTF_SCANCODE | flags;
6666
keyboardInput.ki.time = 0;
6767
SendInput(1, &keyboardInput, sizeof(keyboardInput));
@@ -167,9 +167,11 @@ void typeString(const char *str)
167167
c3 = (*str++) & 0x3F;
168168
n = ((c & 0x07) << 18) | (c1 << 12) | (c2 << 6) | c3;
169169
}
170+
else
171+
continue; /* ignore invalid UTF-8 */
170172

171-
toggleUniKey(n, true);
172-
toggleUniKey(n, false);
173+
toggleUniKey((char)n, true);
174+
toggleUniKey((char)n, false);
173175
}
174176
}
175177

src/win32/mouse.c

+2-1
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,12 @@
2626
*/
2727
void moveMouse(MMPoint point)
2828
{
29-
SetCursorPos (point.x, point.y);
29+
SetCursorPos ((int)point.x, (int)point.y);
3030
}
3131

3232
void dragMouse(MMPoint point, const MMMouseButton button)
3333
{
34+
(void)button;
3435
moveMouse(point);
3536
}
3637

src/win32/screengrab.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@ MMBitmapRef copyMMBitmapFromDisplayInRect(MMRect rect)
3838
(int)rect.size.width,
3939
(int)rect.size.height,
4040
screen,
41-
rect.origin.x,
42-
rect.origin.y,
41+
(int)rect.origin.x,
42+
(int)rect.origin.y,
4343
SRCCOPY)) {
4444

4545
/* Error copying data. */

0 commit comments

Comments
 (0)