From bb6368fdc6aed68ef7db40da1a7d6589a529550d Mon Sep 17 00:00:00 2001 From: Daniel Giritzer Date: Fri, 2 Jun 2017 20:59:21 +0200 Subject: [PATCH] Casting unsigned long to unsigned int to avoid compiler warnings --- src/Makefile | 2 +- src/devmem2.c | 12 +++++++++++- src/main.c | 2 +- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/Makefile b/src/Makefile index ef8528c..551eef1 100644 --- a/src/Makefile +++ b/src/Makefile @@ -25,7 +25,7 @@ PROJNAME = tvout CC = gcc CXX = g++ AR = ar -LD = g++ +LD = gcc WINDRES = windres INC = diff --git a/src/devmem2.c b/src/devmem2.c index 1e8ec8c..20aecfb 100644 --- a/src/devmem2.c +++ b/src/devmem2.c @@ -85,14 +85,22 @@ int writemem(char* address, char* value, int access_type) return EXIT_SUCCESS; } -int readmem(char* address, int access_type, unsigned long read_result) +int readmem(char* address, int access_type, unsigned long *result) { int fd; void *map_base, *virt_addr; off_t target; + unsigned long read_result = 0; target = strtoul(address, 0, 0); + if(result == NULL) + { + //Print error on failure + ERROR("Result Parameter is a nullpointer!"); + return EXIT_FAILURE; + } + // Try to open /dev/mem if((fd = open("/dev/mem", O_RDWR | O_SYNC)) == -1) @@ -135,6 +143,8 @@ int readmem(char* address, int access_type, unsigned long read_result) return EXIT_FAILURE; } + *result = read_result; + close(fd); return EXIT_SUCCESS; } diff --git a/src/main.c b/src/main.c index 32a5ae6..136fd75 100644 --- a/src/main.c +++ b/src/main.c @@ -8,6 +8,6 @@ int main() readmem("0x01E00130", 'w', readfrommemory); - printf("Value: 0x%X", readfrommemory); + printf("Value: 0x%X", (unsigned int)readfrommemory); return 0; } -- 2.11.0