|
|
|
@ -226,6 +226,7 @@ static int persist__msg_store_chunk_restore(struct mosquitto_db *db, FILE *db_fp
|
|
|
|
|
struct P_msg_store chunk;
|
|
|
|
|
struct mosquitto_msg_store *stored = NULL;
|
|
|
|
|
struct mosquitto_msg_store_load *load;
|
|
|
|
|
int64_t message_expiry_interval64;
|
|
|
|
|
uint32_t message_expiry_interval;
|
|
|
|
|
int rc = 0;
|
|
|
|
|
int i;
|
|
|
|
@ -262,7 +263,12 @@ static int persist__msg_store_chunk_restore(struct mosquitto_db *db, FILE *db_fp
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if(chunk.F.expiry_time > 0){
|
|
|
|
|
message_expiry_interval = chunk.F.expiry_time - time(NULL);
|
|
|
|
|
message_expiry_interval64 = chunk.F.expiry_time - time(NULL);
|
|
|
|
|
if(message_expiry_interval64 < 0 || message_expiry_interval > UINT32_MAX){
|
|
|
|
|
message_expiry_interval = 0;
|
|
|
|
|
}else{
|
|
|
|
|
message_expiry_interval = (uint32_t)message_expiry_interval64;
|
|
|
|
|
}
|
|
|
|
|
}else{
|
|
|
|
|
message_expiry_interval = 0;
|
|
|
|
|
}
|
|
|
|
|