diff --git a/lib/modules/Protocols.pmod/HTTP.pmod/Server.pmod/module.pmod b/lib/modules/Protocols.pmod/HTTP.pmod/Server.pmod/module.pmod
index 4f11e3346185ec1cb8d2278747b614933d8cecdf..736ac6a76acb3e9269c6a5843f57ed296afaae64 100644
--- a/lib/modules/Protocols.pmod/HTTP.pmod/Server.pmod/module.pmod
+++ b/lib/modules/Protocols.pmod/HTTP.pmod/Server.pmod/module.pmod
@@ -62,8 +62,8 @@ string http_date(int time)
 //!	zero (UNDEFINED) if the given string isn't a HTTP date
 int http_decode_date(string data)
 {
-   Calendar.ISO_UTC.Second s=
-      Calendar.ISO_UTC.parse("%e, %D %M %Y %h:%m:%s GMT",data);
+
+   Calendar.ISO_UTC.Second s=Calendar.ISO_UTC.http_time(data);
    if (!s) return UNDEFINED;
    return s->unix_time();
 }