bandb/bandb: functions that call exit(3) should be marked noreturn, avoid sign overflow in integer function argument

This commit is contained in:
Aaron Jones 2016-06-01 20:37:51 +00:00
parent 2e032bf638
commit e44fe481e3
No known key found for this signature in database
GPG key ID: 6E854C0FAAD4CEA4

View file

@ -236,6 +236,9 @@ parse_request(rb_helper *helper)
}
static void
error_cb(rb_helper *helper) __attribute__((noreturn));
static void
error_cb(rb_helper *helper)
{
@ -282,13 +285,16 @@ setup_signals(void)
}
static void
db_error_cb(const char *errstr) __attribute__((noreturn));
static void
db_error_cb(const char *errstr)
{
char buf[256];
snprintf(buf, sizeof(buf), "! :%s", errstr);
rb_helper_write(bandb_helper, "%s", buf);
rb_sleep(2 << 30, 0);
rb_sleep(1 << 30, 0);
exit(1);
}