--- mqtt/src/daemon.c 2012/07/03 07:48:49 1.2.2.44 +++ mqtt/src/daemon.c 2012/07/03 07:52:36 1.2.2.45 @@ -77,8 +77,8 @@ finiSession(struct tagSession *sess) call.FiniSessPUB(&cfg, pub, sess->sess_cid, sess->sess_user, "%"); if (call.DeletePUB_subscribe) call.DeletePUB_subscribe(&cfg, pub, sess->sess_cid, "%", sess->sess_user, "%"); - if (call.WipePUB_topic) - call.WipePUB_topic(&cfg, pub, sess->sess_cid, sess->sess_user, -1); + if (call.WipePUB_topic) /* only dynamic messages */ + call.WipePUB_topic(&cfg, pub, sess->sess_cid, sess->sess_user, 0); } while ((store = SLIST_FIRST(&sess->sess_subscr))) { @@ -305,7 +305,7 @@ startSession(sched_task_t *task) if (sess->sess_clean) { if (call.DeletePUB_subscribe) call.DeletePUB_subscribe(&cfg, pub, sess->sess_cid, "%", sess->sess_user, "%"); - if (call.WipePUB_topic) + if (call.WipePUB_topic) /* delete ALL messages */ call.WipePUB_topic(&cfg, pub, sess->sess_cid, sess->sess_user, -1); } else if (call.ReadPUB_subscribe) { /* load subscribes */