diff --git a/CONTROL/control b/CONTROL/control
index fc4e1e3..d7bac46 100644
--- a/CONTROL/control
+++ b/CONTROL/control
@@ -1,7 +1,7 @@
 Package: webif
 Priority: optional
 Section: web
-Version: 1.3.1-4
+Version: 1.3.1-5
 Architecture: mipsel
 Maintainer: af123@hpkg.tv
 Depends: tcpfix,webif-channelicons(>=1.1.24),lighttpd(>=1.4.39-1),jim(>=0.76-2),jim-oo,jim-sqlite3(>=0.76),jim-cgi(>=0.7-1),jim-binary(>=0.76),service-control(>=2.1),busybox(>=1.20.2-1),lsof(>=4.87),epg(>=1.2.3),hmt(>=2.0.10),ssmtp,cron-daemon(>=1.18.3-3),at(>=3.1.18),anacron,trm(>=1.1),openssl-command,nicesplice,id3v2,file,rsvsync(>=1.1.3),webif-charts(>=1.2-1),stripts(>=1.2.5-3),tmenu(>=1.08),ffmpeg,id3v2,multienv(>=1.6),tcpping(>=1.1),e2fsprogs,wireless-tools(>=29-1),dbupdate,recmon(>=2.0.7),hwctl
diff --git a/webif/lib/rsv.class b/webif/lib/rsv.class
index ff0611b..6ebc61c 100755
--- a/webif/lib/rsv.class
+++ b/webif/lib/rsv.class
@@ -303,6 +303,13 @@ rsv method cleanvars {} {
 rsv method insert {{table pending} {force 0} {defer 0}} {
 	global rsvdb
 
+	# In-progress check
+	set now [clock seconds]
+	if {$nsttime <= $now && [expr $nsttime + $nduration] >= $now} {
+		throw 20 "Event already in progress."
+		return
+	}
+
 	# Duplicate check - all tables
 	if {!$force && $szCRID ne "" && $action == 0} {
 		foreach tab {pending TBL_RESERVATION} {