small fixes
This commit is contained in:
@@ -270,8 +270,8 @@ PIInit::~PIInit() {
|
|||||||
mach_port_deallocate(mach_task_self(), __pi_mac_clock);
|
mach_port_deallocate(mach_task_self(), __pi_mac_clock);
|
||||||
# endif
|
# endif
|
||||||
if (PRIVATE->delete_locs) {
|
if (PRIVATE->delete_locs) {
|
||||||
if (__syslocname__) delete __syslocname__;
|
if (__syslocname__) delete[] __syslocname__;
|
||||||
if (__sysoemname__) delete __sysoemname__;
|
if (__sysoemname__) delete[] __sysoemname__;
|
||||||
}
|
}
|
||||||
# ifdef PIP_ICU
|
# ifdef PIP_ICU
|
||||||
u_cleanup();
|
u_cleanup();
|
||||||
|
|||||||
@@ -124,8 +124,8 @@ ssize_t PICAN::readDevice(void * read_to, ssize_t max_size) {
|
|||||||
#ifdef PIP_CAN
|
#ifdef PIP_CAN
|
||||||
if (sock == -1) return -1;
|
if (sock == -1) return -1;
|
||||||
// piCout << "PICAN read";
|
// piCout << "PICAN read";
|
||||||
can_frame frame;
|
can_frame frame = {};
|
||||||
ssize_t ret = 0;
|
ssize_t ret = 0;
|
||||||
if (PRIVATE->event.wait(sock)) ret = ::read(sock, &frame, sizeof(can_frame));
|
if (PRIVATE->event.wait(sock)) ret = ::read(sock, &frame, sizeof(can_frame));
|
||||||
if (ret < 0) { /*piCoutObj << "Error while read CAN frame " << ret;*/
|
if (ret < 0) { /*piCoutObj << "Error while read CAN frame " << ret;*/
|
||||||
return -1;
|
return -1;
|
||||||
|
|||||||
@@ -251,6 +251,7 @@ int PISharedMemory::read(void * read_to, int max_size) {
|
|||||||
|
|
||||||
|
|
||||||
int PISharedMemory::read(void * read_to, int max_size, int offset) {
|
int PISharedMemory::read(void * read_to, int max_size, int offset) {
|
||||||
|
if (offset < 0 || max_size < 0 || offset > dsize - max_size) return -1;
|
||||||
#ifdef WINDOWS
|
#ifdef WINDOWS
|
||||||
if (!PRIVATE->data) return -1;
|
if (!PRIVATE->data) return -1;
|
||||||
CopyMemory(read_to, &(((char *)(PRIVATE->data))[offset]), max_size);
|
CopyMemory(read_to, &(((char *)(PRIVATE->data))[offset]), max_size);
|
||||||
@@ -271,6 +272,7 @@ int PISharedMemory::write(const void * data, int max_size) {
|
|||||||
|
|
||||||
|
|
||||||
int PISharedMemory::write(const void * data, int max_size, int offset) {
|
int PISharedMemory::write(const void * data, int max_size, int offset) {
|
||||||
|
if (offset < 0 || max_size < 0 || offset > dsize - max_size) return -1;
|
||||||
#ifdef WINDOWS
|
#ifdef WINDOWS
|
||||||
if (!PRIVATE->data) return -1;
|
if (!PRIVATE->data) return -1;
|
||||||
CopyMemory(&(((char *)(PRIVATE->data))[offset]), data, max_size);
|
CopyMemory(&(((char *)(PRIVATE->data))[offset]), data, max_size);
|
||||||
|
|||||||
Reference in New Issue
Block a user