Merge pull request #3001 from jriwanek-forks/CodeQL

Fix "Multiplication result converted to larger type" from CodeQL
This commit is contained in:
Miran Grča
2022-12-30 04:09:34 +01:00
committed by GitHub
12 changed files with 541 additions and 24 deletions

View File

@@ -52,11 +52,14 @@ if(DEV_BRANCH)
endif()
if(VNC)
add_compile_definitions(USE_VNC)
add_library(vnc OBJECT vnc.c vnc_keymap.c)
target_link_libraries(86Box vnc vncserver)
if(WIN32)
target_link_libraries(86Box ws2_32)
find_package(LibVNCServer)
if(LibVNCServer_FOUND)
add_compile_definitions(USE_VNC)
add_library(vnc OBJECT vnc.c vnc_keymap.c)
target_link_libraries(86Box vnc LibVNCServer::vncserver)
if(WIN32)
target_link_libraries(86Box ws2_32)
endif()
endif()
endif()

View File

@@ -486,9 +486,9 @@ img_seek(int drive, int track)
for (side = 0; side < dev->sides; side++) {
if (dev->disk_at_once) {
cur_pos = (track * dev->sectors * ssize * dev->sides) + (side * dev->sectors * ssize);
memcpy(dev->track_data[side], dev->disk_data + cur_pos, dev->sectors * ssize);
memcpy(dev->track_data[side], dev->disk_data + cur_pos, (size_t) dev->sectors * ssize);
} else {
read_bytes = fread(dev->track_data[side], 1, dev->sectors * ssize, dev->f);
read_bytes = fread(dev->track_data[side], 1, (size_t) dev->sectors * ssize, dev->f);
if (read_bytes < (dev->sectors * ssize))
memset(dev->track_data[side] + read_bytes, 0xf6, (dev->sectors * ssize) - read_bytes);
}

View File

@@ -407,7 +407,7 @@ new_page(escp_t *dev, int8_t save, int8_t resetx)
dev->curr_y = dev->top_margin;
if (dev->page) {
dev->page->dirty = 0;
memset(dev->page->pixels, 0x00, dev->page->pitch * dev->page->h);
memset(dev->page->pixels, 0x00, (size_t) dev->page->pitch * dev->page->h);
}
/* Make the page's file name. */
@@ -444,16 +444,16 @@ fill_palette(uint8_t redmax, uint8_t greenmax, uint8_t bluemax, uint8_t colorID,
uint8_t colormask;
int i;
float red = (float) redmax / (float) 30.9;
float green = (float) greenmax / (float) 30.9;
float blue = (float) bluemax / (float) 30.9;
double red = (double) redmax / (double) 30.9;
double green = (double) greenmax / (double) 30.9;
double blue = (double) bluemax / (double) 30.9;
colormask = colorID <<= 5;
for (i = 0; i < 32; i++) {
dev->palcol[i + colormask].r = 255 - (uint8_t) floor(red * (float) i);
dev->palcol[i + colormask].g = 255 - (uint8_t) floor(green * (float) i);
dev->palcol[i + colormask].b = 255 - (uint8_t) floor(blue * (float) i);
dev->palcol[i + colormask].r = 255 - (uint8_t) floor(red * (double) i);
dev->palcol[i + colormask].g = 255 - (uint8_t) floor(green * (double) i);
dev->palcol[i + colormask].b = 255 - (uint8_t) floor(blue * (double) i);
}
}
@@ -2043,8 +2043,8 @@ escp_init(void *lpt)
dev->page->w = (int) (dev->dpi * dev->page_width);
dev->page->h = (int) (dev->dpi * dev->page_height);
dev->page->pitch = dev->page->w;
dev->page->pixels = (uint8_t *) malloc(dev->page->pitch * dev->page->h);
memset(dev->page->pixels, 0x00, dev->page->pitch * dev->page->h);
dev->page->pixels = (uint8_t *) malloc((size_t) dev->page->pitch * dev->page->h);
memset(dev->page->pixels, 0x00, (size_t) dev->page->pitch * dev->page->h);
/* Initialize parameters. */
for (i = 0; i < 32; i++) {

View File

@@ -39,6 +39,7 @@ extern "C" {
// Disable c99-designator to avoid the warnings in rtmidi_*_device
#ifdef __clang__
# if __has_warning("-Wc99-designator")
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wc99-designator"
# endif
#endif
@@ -302,4 +303,11 @@ const device_t rtmidi_input_device = {
.force_redraw = NULL,
.config = midi_input_config
};
#ifdef __clang__
# if __has_warning("-Wc99-designator")
# pragma clang diagnostic pop
# endif
#endif
}

View File

@@ -29,6 +29,15 @@ extern "C" {
#include <86box/snd_opl.h>
#include <86box/mem.h>
#include <86box/rom.h>
// Disable c99-designator to avoid the warnings in *_ymfm_device
#ifdef __clang__
# if __has_warning("-Wc99-designator")
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wc99-designator"
# endif
#endif
}
#define RSM_FRAC 10
@@ -432,4 +441,11 @@ const fm_drv_t ymfm_drv {
&ymfm_drv_set_do_cycles,
NULL,
};
#ifdef __clang__
# if __has_warning("-Wc99-designator")
# pragma clang diagnostic pop
# endif
#endif
}

View File

@@ -2663,8 +2663,8 @@ pgc_init(pgc_t *dev, int maxw, int maxh, int visw, int vish,
dev->visw = visw;
dev->vish = vish;
dev->vram = (uint8_t *) malloc(maxw * maxh);
memset(dev->vram, 0x00, maxw * maxh);
dev->vram = (uint8_t *) malloc((size_t) maxw * maxh);
memset(dev->vram, 0x00, (size_t) maxw * maxh);
dev->cga_vram = (uint8_t *) malloc(16384);
memset(dev->cga_vram, 0x00, 16384);

View File

@@ -68,7 +68,7 @@ svga_render_blank(svga_t *svga)
}
uint32_t *line_ptr = &buffer32->line[svga->displine + svga->y_add][svga->x_add];
uint32_t line_width = (svga->hdisp + svga->scrollcache) * char_width * sizeof(uint32_t);
uint32_t line_width = (uint32_t) (svga->hdisp + svga->scrollcache) * char_width * sizeof(uint32_t);
memset(line_ptr, 0, line_width);
}

View File

@@ -804,7 +804,7 @@ create_bitmap(int x, int y)
bitmap_t *b = malloc(sizeof(bitmap_t) + (y * sizeof(uint32_t *)));
int c;
b->dat = malloc(x * y * 4);
b->dat = malloc((size_t) x * y * 4);
for (c = 0; c < y; c++)
b->line[c] = &(b->dat[c * x]);
b->w = x;

View File

@@ -416,7 +416,7 @@ ifeq ($(VNC), y)
OPTS += -I$(VNC_PATH)\INCLUDE
VNCLIB := -L$(VNC_PATH)\LIB
endif
VNCLIB += -lvncserver
VNCLIB += -lvncserver.dll
VNCOBJ := vnc.o vnc_keymap.o
endif