diff options
author | unknown <gluh@mysql.com> | 2005-05-05 12:24:10 +0500 |
---|---|---|
committer | unknown <gluh@mysql.com> | 2005-05-05 12:24:10 +0500 |
commit | 2d94bbce60f0dee35ec84e76d45692985a8ff432 (patch) | |
tree | a55436a1a63928befb7cac70c5c4626ea8db2485 /sql/mysqld.cc | |
parent | a495d868219c89089df2d339d4f8a06814bf994b (diff) | |
download | mariadb-git-2d94bbce60f0dee35ec84e76d45692985a8ff432.tar.gz |
Bug #5843: Server code does not check whether PID file was successfully written
Diffstat (limited to 'sql/mysqld.cc')
-rw-r--r-- | sql/mysqld.cc | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/sql/mysqld.cc b/sql/mysqld.cc index 682733abd89..8ade81401aa 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -6749,9 +6749,15 @@ static void create_pid_file() char buff[21], *end; end= int10_to_str((long) getpid(), buff, 10); *end++= '\n'; - (void) my_write(file, (byte*) buff, (uint) (end-buff),MYF(MY_WME)); + if (!my_write(file, (byte*) buff, (uint) (end-buff), MYF(MY_WME | MY_NABP))) + { + (void) my_close(file, MYF(0)); + return; + } (void) my_close(file, MYF(0)); } + sql_perror("Can't start server: can't create PID file"); + exit(1); } |