diff options
author | CoprDistGit <infra@openeuler.org> | 2024-08-05 02:17:39 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2024-08-05 02:17:39 +0000 |
commit | 9d5165866832c84d122aefd4ecf4f244a58a1568 (patch) | |
tree | 2744509894b854661a2563e05a425bfd535f0e0e /gpm-1.20.7-covscan.patch | |
parent | 38bccab72afcaa731ea88a9beb69caf667f31762 (diff) |
automatic import of gpmopeneuler24.03_LTS
Diffstat (limited to 'gpm-1.20.7-covscan.patch')
-rw-r--r-- | gpm-1.20.7-covscan.patch | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/gpm-1.20.7-covscan.patch b/gpm-1.20.7-covscan.patch new file mode 100644 index 0000000..f10e66a --- /dev/null +++ b/gpm-1.20.7-covscan.patch @@ -0,0 +1,115 @@ +diff --git a/src/daemon/check_uniqueness.c b/src/daemon/check_uniqueness.c +index 4972413..d0eb4e4 100644 +--- a/src/daemon/check_uniqueness.c ++++ b/src/daemon/check_uniqueness.c +@@ -36,6 +36,7 @@ void check_uniqueness(void) + + if((fp = fopen(GPM_NODE_PID, "r")) != NULL) { + fscanf(fp, "%d", &old_pid); ++ fclose(fp); + if (kill(old_pid,0) == -1) { + gpm_report(GPM_PR_INFO,GPM_MESS_STALE_PID, GPM_NODE_PID); + unlink(GPM_NODE_PID); +diff --git a/src/lib/liblow.c b/src/lib/liblow.c +index 8b40b71..d197dae 100644 +--- a/src/lib/liblow.c ++++ b/src/lib/liblow.c +@@ -250,9 +250,9 @@ int Gpm_Open(Gpm_Connect *conn, int flag) + memcpy(tty, consolename, strlen(consolename)-1); + sprintf(&tty[strlen(consolename) - 1], "%i", flag); + } else if (flag==0) { /* use your current vc */ +- if (isatty(0)) tty = ttyname(0); /* stdin */ +- if (!tty && isatty(1)) tty = ttyname(1); /* stdout */ +- if (!tty && isatty(2)) tty = ttyname(2); /* stderr */ ++ if (isatty(0) && ttyname(0)) tty = strdup(ttyname(0)); /* stdin */ ++ if (!tty && isatty(1) && ttyname(1)) tty = strdup(ttyname(1)); /* stdout */ ++ if (!tty && isatty(2) && ttyname(2)) tty = strdup(ttyname(2)); /* stderr */ + if (tty == NULL) { + gpm_report(GPM_PR_ERR,"checking tty name failed"); + goto err; +@@ -373,10 +373,12 @@ int Gpm_Open(Gpm_Connect *conn, int flag) + #endif + + } ++ if (tty) free(tty); + return gpm_fd; + + /*....................................... Error: free all memory */ + err: ++ if (tty) free(tty); + if (gpm_is_disabled < 2) /* be quiet if no gpmctl socket found */ + gpm_report(GPM_PR_ERR,"Oh, oh, it's an error! possibly I die! "); + while(gpm_stack) { +diff --git a/src/lib/report-lib.c b/src/lib/report-lib.c +index 03230b4..ff74b8c 100644 +--- a/src/lib/report-lib.c ++++ b/src/lib/report-lib.c +@@ -63,5 +63,6 @@ void gpm_report(int line, const char *file, int stat, const char *text, ... ) + fprintf(stderr,"\n"); + #endif + ++ va_end(ap); + if(stat == GPM_STAT_OOPS) exit(1); /* may a lib function call exit ???? */ + } +diff --git a/src/mice.c b/src/mice.c +index 6cbd491..090dfed 100644 +--- a/src/mice.c ++++ b/src/mice.c +@@ -905,7 +905,7 @@ static int M_wacom(Gpm_Event *state, unsigned char *data) + } else { /* Relative Mode */ + /* Treshold; if greather then treat tool as first time in proximity */ + if( abs(x-ox)>(wmaxx/wcmodell[WacomModell].treshold) +- || abs(y-oy)>(wmaxy/wcmodell[WacomModell].treshold) ) ox=x; oy=y; ++ || abs(y-oy)>(wmaxy/wcmodell[WacomModell].treshold) ) { ox=x; oy=y; } + + state->dx= (x-ox) / (wmaxx / win.ws_col / wcmodell[WacomModell].treshold); + state->dy= (y-oy) / (wmaxy / win.ws_row / wcmodell[WacomModell].treshold); +diff --git a/src/prog/gpm-root.y b/src/prog/gpm-root.y +index 76c896c..ded326a 100644 +--- a/src/prog/gpm-root.y ++++ b/src/prog/gpm-root.y +@@ -555,12 +555,15 @@ int f_jptty(int mode, DrawItem *self, int uid) + } /*if*/ + if (ioctl(fd, VT_ACTIVATE, i)<0) { + gpm_report(GPM_PR_ERR, "%s: %s", consolename,strerror(errno)); ++ close(fd); + return 1; + } /*if*/ + if (ioctl(fd, VT_WAITACTIVE, i)<0) { + gpm_report(GPM_PR_ERR, "%s: %s", consolename,strerror(errno)); ++ close(fd); + return 1; + } ++ close(fd); + default: return 0; + } + return 0; /* silly gcc -Wall */ +@@ -586,14 +589,17 @@ int f_mktty(int mode, DrawItem *self, int uid) + } /*if*/ + if (ioctl(fd, VT_OPENQRY, &vc)<0) { + gpm_report(GPM_PR_ERR, "%s: %s",consolename, strerror(errno)); ++ close(fd); + return 1; + } /*if*/ + switch(pid=fork()) { + case -1: + gpm_report(GPM_PR_ERR, "fork(): %s", strerror(errno)); ++ close(fd); + return 1; + case 0: /* child: exec getty */ + sprintf(name,"tty%i",vc); ++ close(fd); + execl("/sbin/mingetty","mingetty",name,(char *)NULL); + exit(1); /* shouldn't happen */ + default: /* father: jump to the tty */ +@@ -601,8 +607,10 @@ int f_mktty(int mode, DrawItem *self, int uid) + ,pid,vc); + consolepids[vc]=pid; + sprintf(self->arg,"%i",vc); ++ close(fd); + return f_jptty(mode,self,uid); + } ++ close(fd); + default: return 0; + } + return 0; |