Hello community, here is the log from the commit of package roundcubemail for openSUSE:Factory checked in at 2012-11-20 13:10:42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/roundcubemail (Old) and /work/SRC/openSUSE:Factory/.roundcubemail.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "roundcubemail", Maintainer is "" Changes: -------- --- /work/SRC/openSUSE:Factory/roundcubemail/roundcubemail.changes 2012-11-12 07:05:59.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.roundcubemail.new/roundcubemail.changes 2012-11-20 13:10:45.000000000 +0100 @@ -1,0 +2,8 @@ +Mon Nov 19 20:59:17 UTC 2012 - w...@rosenauer.org + +- Update to version 0.8.4 + * fix a regression from 0.8.3 in compose window which could lead + to dataloss + * some bugfixes including a fixed XSS vulnerability + +------------------------------------------------------------------- Old: ---- roundcubemail-0.8.3.tar.gz New: ---- roundcubemail-0.8.4.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ roundcubemail.spec ++++++ --- /var/tmp/diff_new_pack.iUl7qj/_old 2012-11-20 13:10:47.000000000 +0100 +++ /var/tmp/diff_new_pack.iUl7qj/_new 2012-11-20 13:10:47.000000000 +0100 @@ -21,7 +21,7 @@ License: GPL-3.0+ and GPL-2.0 and BSD-3-Clause Group: Productivity/Networking/Email/Clients Url: http://www.roundcube.net/ -Version: 0.8.3 +Version: 0.8.4 Release: 0 BuildRequires: apache2-devel BuildRequires: fdupes ++++++ roundcubemail-0.8.3.tar.gz -> roundcubemail-0.8.4.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/roundcubemail-0.8.3/CHANGELOG new/roundcubemail-0.8.4/CHANGELOG --- old/roundcubemail-0.8.3/CHANGELOG 2012-11-10 15:15:21.000000000 +0100 +++ new/roundcubemail-0.8.4/CHANGELOG 2012-11-14 21:30:27.000000000 +0100 @@ -1,6 +1,12 @@ CHANGELOG Roundcube Webmail =========================== +- Fix XSS vulnerability in handling of text/enriched messages (#1488806) +- Fix handling of 'media' attribute on linked css (#1488789) +- Fix regression where unintentional page reload was done after request abort (#1488802) +- Fix excessive LFs at the end of composed message with top_posting=true (#1488797) +- Fix bug where leading blanks were stripped from quoted lines (#1488795) + RELEASE 0.8.3 ------------- - Fix AREA links handling (#1488792) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/roundcubemail-0.8.3/index.php new/roundcubemail-0.8.4/index.php --- old/roundcubemail-0.8.3/index.php 2012-11-10 15:15:21.000000000 +0100 +++ new/roundcubemail-0.8.4/index.php 2012-11-14 21:30:27.000000000 +0100 @@ -2,7 +2,7 @@ /* +-------------------------------------------------------------------------+ | Roundcube Webmail IMAP Client | - | Version 0.8.3 | + | Version 0.8.4 | | | | Copyright (C) 2005-2012, The Roundcube Dev Team | | | diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/roundcubemail-0.8.3/installer/rcube_install.php new/roundcubemail-0.8.4/installer/rcube_install.php --- old/roundcubemail-0.8.3/installer/rcube_install.php 2012-11-10 15:15:21.000000000 +0100 +++ new/roundcubemail-0.8.4/installer/rcube_install.php 2012-11-14 21:30:27.000000000 +0100 @@ -524,7 +524,7 @@ '0.5-beta', '0.5', '0.5.1', '0.6-beta', '0.6', '0.7-beta', '0.7', '0.7.1', '0.7.2', '0.7.3', - '0.8-beta', '0.8-rc', '0.8.0', '0.8.1', '0.8.2', + '0.8-beta', '0.8-rc', '0.8.0', '0.8.1', '0.8.2', '0.8.3', )); return $select; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/roundcubemail-0.8.3/program/include/iniset.php new/roundcubemail-0.8.4/program/include/iniset.php --- old/roundcubemail-0.8.3/program/include/iniset.php 2012-11-10 15:15:21.000000000 +0100 +++ new/roundcubemail-0.8.4/program/include/iniset.php 2012-11-14 21:30:28.000000000 +0100 @@ -42,7 +42,7 @@ } // application constants -define('RCMAIL_VERSION', '0.8.3'); +define('RCMAIL_VERSION', '0.8.4'); define('RCMAIL_CHARSET', 'UTF-8'); define('JS_OBJECT_NAME', 'rcmail'); define('RCMAIL_START', microtime(true)); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/roundcubemail-0.8.3/program/js/app.js new/roundcubemail-0.8.4/program/js/app.js --- old/roundcubemail-0.8.3/program/js/app.js 2012-11-10 15:15:39.000000000 +0100 +++ new/roundcubemail-0.8.4/program/js/app.js 2012-11-14 21:30:39.000000000 +0100 @@ -112,10 +112,10 @@ function(a){$("input[name='_draft_saveid']").val(a)};this.auto_save_start=function(){this.env.draft_autosave&&(this.save_timer=setTimeout(function(){j.command("savedraft")},1E3*this.env.draft_autosave));this.busy=!1};this.compose_field_hash=function(a){var b,d,e,f="",g=["to","cc","bcc","subject"];for(d=0;d<g.length;d++)if(e=$('[name="_'+g[d]+'"]').val())f+=e+":";f=window.tinyMCE&&(b=tinyMCE.get(this.env.composebody))?f+b.getContent():f+$("[name='_message']").val();if(this.env.attachments)for(var h in this.env.attachments)f+= h;a&&(this.cmp_hash=f);return f};this.change_identity=function(a,b){if(!a||!a.options)return!1;b||(b=this.env.show_sig);var d;d=-1;var e=a.options[a.selectedIndex].value,f=$("[name='_message']"),g=f.val(),h="1"==$("input[name='_is_html']").val(),i=this.env.identity;this.env.signatures&&this.env.signatures[e]?(this.enable_command("insert-sig",!0),this.env.compose_commands.push("insert-sig")):this.enable_command("insert-sig",!1);h?b&&this.env.signatures&&(d=tinyMCE.get(this.env.composebody),f=d.dom.get("_rc_sig"), f||(g=d.getBody(),i=d.getDoc(),f=i.createElement("div"),f.setAttribute("id","_rc_sig"),this.env.sig_above?(d.getWin().focus(),d=d.selection.getNode(),"BODY"==d.nodeName?(g.insertBefore(f,g.firstChild),g.insertBefore(i.createElement("br"),g.firstChild)):(g.insertBefore(f,d.nextSibling),g.insertBefore(i.createElement("br"),d.nextSibling))):(bw.ie&&g.appendChild(i.createElement("br")),g.appendChild(f))),this.env.signatures[e]&&(f.innerHTML=this.env.signatures[e].html)):(b&&(i&&this.env.signatures&&this.env.signatures[i])&& -(i=this.env.signatures[i].text,i=i.replace(/\r\n/g,"\n"),d=this.env.sig_above?g.indexOf(i):g.lastIndexOf(i),0<=d&&(g=g.substring(0,d)+g.substring(d+i.length,g.length))),b&&this.env.signatures&&this.env.signatures[e]?(i=this.env.signatures[e].text,i=i.replace(/\r\n/g,"\n"),this.env.sig_above?0<=d?(g=g.substring(0,d)+i+g.substring(d,g.length),d-=1):(pos=this.get_caret_pos(f.get(0)))?(g=g.substring(0,pos)+"\n"+i+"\n\n"+g.substring(pos,g.length),d=pos):(d=0,g="\n\n"+i+"\n\n"+g.replace(/^[\r\n]+/,"")): -(g=g.replace(/[\r\n]+$/,""),d=!this.env.top_posting&&g.length?g.length+1:0,g+="\n\n"+i)):d=this.env.top_posting?0:g.length,f.val(g),this.set_caret_pos(f.get(0),d));this.env.identity=e;return!0};this.upload_file=function(a){if(!a)return!1;var b,d=0,e=$("input[type=file]",a).get(0),f=e.files?e.files.length:e.value?1:0;if(f){if(e.files&&this.env.max_filesize&&this.env.filesizeerror){for(b=0;b<f;b++)d+=e.files[b].size;if(d&&d>this.env.max_filesize){this.display_message(this.env.filesizeerror,"error"); -return}}b=this.async_upload_form(a,"upload",function(a){var b,d="";try{this.contentDocument?b=this.contentDocument:this.contentWindow&&(b=this.contentWindow.document),d=b.childNodes[0].innerHTML}catch(e){}if(!d.match(/add2attachment/)&&(!bw.opera||rcmail.env.uploadframe&&rcmail.env.uploadframe==a.data.ts))d.match(/display_message/)||rcmail.display_message(rcmail.get_label("fileuploaderror"),"error"),rcmail.remove_from_attachment_list(a.data.ts);bw.opera&&(rcmail.env.uploadframe=a.data.ts)});f="<span>"+ -this.get_label("uploading"+(1<f?"many":""))+"</span>";d=b.replace(/^rcmupload/,"");this.env.loadingicon&&(f='<img src="'+this.env.loadingicon+'" alt="" class="uploading" />'+f);f='<a title="'+this.get_label("cancel")+'" onclick="return rcmail.cancel_attachment_upload(\''+d+"', '"+b+'\');" href="#cancelupload" class="cancelupload">'+(this.env.cancelicon?'<img src="'+this.env.cancelicon+'" alt="" />':this.get_label("cancel"))+"</a>"+f;this.add2attachment_list(d,{name:"",html:f,classname:"uploading", +(i=this.env.signatures[i].text,i=i.replace(/\r\n/g,"\n"),d=this.env.sig_above?g.indexOf(i):g.lastIndexOf(i),0<=d&&(g=g.substring(0,d)+g.substring(d+i.length,g.length))),b&&this.env.signatures&&this.env.signatures[e]?(i=this.env.signatures[e].text,i=i.replace(/\r\n/g,"\n"),this.env.sig_above?0<=d?(g=g.substring(0,d)+i+g.substring(d,g.length),d-=1):g?(pos=this.get_caret_pos(f.get(0)))?(g=g.substring(0,pos)+"\n"+i+"\n\n"+g.substring(pos,g.length),d=pos):(d=0,g="\n\n"+i+"\n\n"+g.replace(/^[\r\n]+/,"")): +(d=0,g="\n\n"+i):(g=g.replace(/[\r\n]+$/,""),d=!this.env.top_posting&&g.length?g.length+1:0,g+="\n\n"+i)):d=this.env.top_posting?0:g.length,f.val(g),this.set_caret_pos(f.get(0),d));this.env.identity=e;return!0};this.upload_file=function(a){if(!a)return!1;var b,d=0,e=$("input[type=file]",a).get(0),f=e.files?e.files.length:e.value?1:0;if(f){if(e.files&&this.env.max_filesize&&this.env.filesizeerror){for(b=0;b<f;b++)d+=e.files[b].size;if(d&&d>this.env.max_filesize){this.display_message(this.env.filesizeerror, +"error");return}}b=this.async_upload_form(a,"upload",function(a){var b,d="";try{this.contentDocument?b=this.contentDocument:this.contentWindow&&(b=this.contentWindow.document),d=b.childNodes[0].innerHTML}catch(e){}if(!d.match(/add2attachment/)&&(!bw.opera||rcmail.env.uploadframe&&rcmail.env.uploadframe==a.data.ts))d.match(/display_message/)||rcmail.display_message(rcmail.get_label("fileuploaderror"),"error"),rcmail.remove_from_attachment_list(a.data.ts);bw.opera&&(rcmail.env.uploadframe=a.data.ts)}); +f="<span>"+this.get_label("uploading"+(1<f?"many":""))+"</span>";d=b.replace(/^rcmupload/,"");this.env.loadingicon&&(f='<img src="'+this.env.loadingicon+'" alt="" class="uploading" />'+f);f='<a title="'+this.get_label("cancel")+'" onclick="return rcmail.cancel_attachment_upload(\''+d+"', '"+b+'\');" href="#cancelupload" class="cancelupload">'+(this.env.cancelicon?'<img src="'+this.env.cancelicon+'" alt="" />':this.get_label("cancel"))+"</a>"+f;this.add2attachment_list(d,{name:"",html:f,classname:"uploading", complete:!1});this.env.upload_progress_time&&this.upload_progress_start("upload",d)}this.gui_objects.attachmentform=a;return!0};this.add2attachment_list=function(a,b,d){if(!this.gui_objects.attachmentlist)return!1;var e,f=$("<li>").attr("id",a).addClass(b.classname).html(b.html);d&&(e=document.getElementById(d))?f.replaceAll(e):f.appendTo(this.gui_objects.attachmentlist);d&&this.env.attachments[d]&&delete this.env.attachments[d];this.env.attachments[a]=b;return!0};this.remove_from_attachment_list= function(a){delete this.env.attachments[a];$("#"+a).remove()};this.remove_attachment=function(a){a&&this.env.attachments[a]&&this.http_post("remove-attachment",{_id:this.env.compose_id,_file:a});return!0};this.cancel_attachment_upload=function(a,b){if(!a||!b)return!1;this.remove_from_attachment_list(a);$("iframe[name='"+b+"']").remove();return!1};this.upload_progress_start=function(a,b){setTimeout(function(){rcmail.http_request(a,{_progress:b})},1E3*this.env.upload_progress_time)};this.upload_progress_update= function(a){var b=$("#"+a.name+"> span");b.length&&a.text&&(b.text(a.text),a.done||this.upload_progress_start(a.action,a.name))};this.add_contact=function(a){a&&this.http_post("addcontact",{_address:a});return!0};this.qsearch=function(a){if(""!=a){var b=this.set_busy(!0,"searching");this.message_list?this.clear_message_list():this.contact_list&&this.list_contacts_clear();this.env.current_page=1;r=this.http_request("search",this.search_params(a)+(this.env.source?"&_source="+urlencode(this.env.source): @@ -207,13 +207,13 @@ "purge","expunge","select-all","select-none","sort","expand-all","expand-unread","collapse-all",!1)),this.message_list&&this.triggerEvent("listupdate",{folder:this.env.mailbox,rowcount:this.message_list.rowcount}));break;case "check-recent":case "getunread":case "search":this.env.qsearch=null;case "list":if("mail"==this.task){if(this.enable_command("show","expunge","select-all","select-none","sort",0<this.env.messagecount),this.enable_command("purge",this.purge_mailbox_test()),this.enable_command("expand-all", "expand-unread","collapse-all",this.env.threading&&this.env.messagecount),("list"==a.action||"search"==a.action)&&this.message_list)this.msglist_select(this.message_list),this.triggerEvent("listupdate",{folder:this.env.mailbox,rowcount:this.message_list.rowcount})}else if("addressbook"==this.task&&(this.enable_command("export",this.contact_list&&0<this.contact_list.rowcount),"list"==a.action||"search"==a.action))this.enable_command("search-create",""==this.env.source),this.enable_command("search-delete", this.env.search_id),this.update_group_commands(),this.triggerEvent("listupdate",{folder:this.env.source,rowcount:this.contact_list.rowcount})}a.unlock&&this.hide_message(a.unlock);this.triggerEvent("responseafter",{response:a});this.triggerEvent("responseafter"+a.action,{response:a})}};this.http_error=function(a,b,d,e,f){d=a.statusText;this.set_busy(!1,null,e);a.abort();this.unload||(a.status&&d?this.display_message(this.get_label("servererror")+" ("+d+")","error"):"timeout"==b?this.display_message(this.get_label("requesttimedout"), -"error"):0==a.status&&"abort"!=b&&this.display_message(this.get_label("servererror")+" (No connection)","error"),a=a.getResponseHeader("Location"),""!=a&&this.redirect(a),"keep-alive"==f?setTimeout(function(){j.keep_alive();j.start_keepalive()},3E4):"check-recent"==f&&setTimeout(function(){j.check_for_recent(!1);j.start_keepalive()},3E4))};this.async_upload_form=function(a,b,d){var e=(new Date).getTime(),f="rcmupload"+e;if(this.env.upload_progress_name){var g=this.env.upload_progress_name,h=$("input[name="+ -g+"]",a);h.length||(h=$("<input>").attr({type:"hidden",name:g}),h.prependTo(a));h.val(e)}document.all?document.body.insertAdjacentHTML("BeforeEnd",'<iframe name="'+f+'" src="program/blank.gif" style="width:0;height:0;visibility:hidden;"></iframe>'):(g=document.createElement("iframe"),g.name=f,g.style.border="none",g.style.width=0,g.style.height=0,g.style.visibility="hidden",document.body.appendChild(g));$(f).bind("load",{ts:e},d);$(a).attr({target:f,action:this.url(b,{_id:this.env.compose_id||"", -_uploadid:e}),method:"POST"}).attr(a.encoding?"encoding":"enctype","multipart/form-data").submit();return f};this.start_keepalive=function(){this.env.keep_alive&&!this.env.framed&&(this._int&&clearInterval(this._int),"mail"==this.task&&this.gui_objects.mailboxlist?this._int=setInterval(function(){j.check_for_recent(!1)},1E3*this.env.keep_alive):"login"!=this.task&&"print"!=this.env.action&&(this._int=setInterval(function(){j.keep_alive()},1E3*this.env.keep_alive)))};this.keep_alive=function(){this.busy|| -this.http_request("keep-alive")};this.check_for_recent=function(a){if(!this.busy){var b,d="_mbox="+urlencode(this.env.mailbox);a&&(b=this.set_busy(!0,"checkingmail"),d+="&_refresh=1",this.start_keepalive());this.gui_objects.messagelist&&(d+="&_list=1");this.gui_objects.quotadisplay&&(d+="&_quota=1");this.env.search_request&&(d+="&_search="+this.env.search_request);this.http_request("check-recent",d,b)}};this.get_single_uid=function(){return this.env.uid?this.env.uid:this.message_list?this.message_list.get_single_selection(): -null};this.get_single_cid=function(){return this.env.cid?this.env.cid:this.contact_list?this.contact_list.get_single_selection():null};this.get_caret_pos=function(a){if(void 0!==a.selectionEnd)return a.selectionEnd;if(document.selection&&document.selection.createRange){var b=document.selection.createRange();if(b.parentElement()!=a)return 0;var d=b.duplicate();"TEXTAREA"==a.tagName?d.moveToElementText(a):d.expand("textedit");d.setEndPoint("EndToStart",b);b=d.text.length;return b<=a.value.length?b: --1}return a.value.length};this.set_caret_pos=function(a,b){if(a.setSelectionRange)a.setSelectionRange(b,b);else if(a.createTextRange){var d=a.createTextRange();d.collapse(!0);d.moveEnd("character",b);d.moveStart("character",b);d.select()}};this.lock_form=function(a,b){if(a&&a.elements){var d,e,f;b&&(this.disabled_form_elements=[]);d=0;for(e=a.elements.length;d<e;d++)if(f=a.elements[d],"hidden"!=f.type)if(b&&f.disabled)this.disabled_form_elements.push(f);else if(b||this.disabled_form_elements&&0>$.inArray(f, -this.disabled_form_elements))f.disabled=b}};this.mailto_handler_uri=function(){return location.href.split("?")[0]+"?_task=mail&_action=compose&_to=%s"};this.register_protocol_handler=function(a){try{window.navigator.registerProtocolHandler("mailto",this.mailto_handler_uri(),a)}catch(b){}};this.check_protocol_handler=function(a,b){var d=window.navigator;!d||"function"!=typeof d.registerProtocolHandler||"function"==typeof d.isProtocolHandlerRegistered&&"registered"==d.isProtocolHandlerRegistered("mailto", -this.mailto_handler_uri())?$(b).addClass("disabled"):$(b).click(function(){rcmail.register_protocol_handler(a);return!1})}}rcube_webmail.long_subject_title=function(j,t){if(!j.title){var a=$(j);a.width()+15*t>a.parent().width()&&(j.title=a.html())}}; +"error"):0==a.status&&"abort"!=b&&this.display_message(this.get_label("servererror")+" (No connection)","error"),"keep-alive"==f?setTimeout(function(){j.keep_alive();j.start_keepalive()},3E4):"check-recent"==f&&setTimeout(function(){j.check_for_recent(!1);j.start_keepalive()},3E4))};this.async_upload_form=function(a,b,d){var e=(new Date).getTime(),f="rcmupload"+e;if(this.env.upload_progress_name){var g=this.env.upload_progress_name,h=$("input[name="+g+"]",a);h.length||(h=$("<input>").attr({type:"hidden", +name:g}),h.prependTo(a));h.val(e)}document.all?document.body.insertAdjacentHTML("BeforeEnd",'<iframe name="'+f+'" src="program/blank.gif" style="width:0;height:0;visibility:hidden;"></iframe>'):(g=document.createElement("iframe"),g.name=f,g.style.border="none",g.style.width=0,g.style.height=0,g.style.visibility="hidden",document.body.appendChild(g));$(f).bind("load",{ts:e},d);$(a).attr({target:f,action:this.url(b,{_id:this.env.compose_id||"",_uploadid:e}),method:"POST"}).attr(a.encoding?"encoding": +"enctype","multipart/form-data").submit();return f};this.start_keepalive=function(){this.env.keep_alive&&!this.env.framed&&(this._int&&clearInterval(this._int),"mail"==this.task&&this.gui_objects.mailboxlist?this._int=setInterval(function(){j.check_for_recent(!1)},1E3*this.env.keep_alive):"login"!=this.task&&"print"!=this.env.action&&(this._int=setInterval(function(){j.keep_alive()},1E3*this.env.keep_alive)))};this.keep_alive=function(){this.busy||this.http_request("keep-alive")};this.check_for_recent= +function(a){if(!this.busy){var b,d="_mbox="+urlencode(this.env.mailbox);a&&(b=this.set_busy(!0,"checkingmail"),d+="&_refresh=1",this.start_keepalive());this.gui_objects.messagelist&&(d+="&_list=1");this.gui_objects.quotadisplay&&(d+="&_quota=1");this.env.search_request&&(d+="&_search="+this.env.search_request);this.http_request("check-recent",d,b)}};this.get_single_uid=function(){return this.env.uid?this.env.uid:this.message_list?this.message_list.get_single_selection():null};this.get_single_cid= +function(){return this.env.cid?this.env.cid:this.contact_list?this.contact_list.get_single_selection():null};this.get_caret_pos=function(a){if(void 0!==a.selectionEnd)return a.selectionEnd;if(document.selection&&document.selection.createRange){var b=document.selection.createRange();if(b.parentElement()!=a)return 0;var d=b.duplicate();"TEXTAREA"==a.tagName?d.moveToElementText(a):d.expand("textedit");d.setEndPoint("EndToStart",b);b=d.text.length;return b<=a.value.length?b:-1}return a.value.length}; +this.set_caret_pos=function(a,b){if(a.setSelectionRange)a.setSelectionRange(b,b);else if(a.createTextRange){var d=a.createTextRange();d.collapse(!0);d.moveEnd("character",b);d.moveStart("character",b);d.select()}};this.lock_form=function(a,b){if(a&&a.elements){var d,e,f;b&&(this.disabled_form_elements=[]);d=0;for(e=a.elements.length;d<e;d++)if(f=a.elements[d],"hidden"!=f.type)if(b&&f.disabled)this.disabled_form_elements.push(f);else if(b||this.disabled_form_elements&&0>$.inArray(f,this.disabled_form_elements))f.disabled= +b}};this.mailto_handler_uri=function(){return location.href.split("?")[0]+"?_task=mail&_action=compose&_to=%s"};this.register_protocol_handler=function(a){try{window.navigator.registerProtocolHandler("mailto",this.mailto_handler_uri(),a)}catch(b){}};this.check_protocol_handler=function(a,b){var d=window.navigator;!d||"function"!=typeof d.registerProtocolHandler||"function"==typeof d.isProtocolHandlerRegistered&&"registered"==d.isProtocolHandlerRegistered("mailto",this.mailto_handler_uri())?$(b).addClass("disabled"): +$(b).click(function(){rcmail.register_protocol_handler(a);return!1})}}rcube_webmail.long_subject_title=function(j,t){if(!j.title){var a=$(j);a.width()+15*t>a.parent().width()&&(j.title=a.html())}}; rcube_webmail.long_subject_title_ie=function(j,t){if(!j.title){var a=$(j),b=$.trim(a.text()),d=$("<span>").text(b).css({position:"absolute","float":"left",visibility:"hidden","font-size":a.css("font-size"),"font-weight":a.css("font-weight")}).appendTo($("body")),e=d.width();d.remove();e+15*t>a.width()&&(j.title=b)}};rcube_webmail.prototype.addEventListener=rcube_event_engine.prototype.addEventListener;rcube_webmail.prototype.removeEventListener=rcube_event_engine.prototype.removeEventListener; rcube_webmail.prototype.triggerEvent=rcube_event_engine.prototype.triggerEvent; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/roundcubemail-0.8.3/program/js/app.js.src new/roundcubemail-0.8.4/program/js/app.js.src --- old/roundcubemail-0.8.3/program/js/app.js.src 2012-11-10 15:15:21.000000000 +0100 +++ new/roundcubemail-0.8.4/program/js/app.js.src 2012-11-14 21:30:28.000000000 +0100 @@ -3300,6 +3300,10 @@ message = message.substring(0, p) + sig + message.substring(p, message.length); cursor_pos = p - 1; } + else if (!message) { // empty message + cursor_pos = 0; + message = '\n\n' + sig; + } else if (pos = this.get_caret_pos(input_message.get(0))) { // at cursor position message = message.substring(0, pos) + '\n' + sig + '\n\n' + message.substring(pos, message.length); cursor_pos = pos; @@ -6141,11 +6145,6 @@ else if (request.status == 0 && status != 'abort') this.display_message(this.get_label('servererror') + ' (No connection)', 'error'); - // redirect to url specified in location header if not empty - var location_url = request.getResponseHeader("Location"); - if (location_url != '') - this.redirect(location_url); - // re-send keep-alive requests after 30 seconds if (action == 'keep-alive') setTimeout(function(){ ref.keep_alive(); ref.start_keepalive(); }, 30000); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/roundcubemail-0.8.3/program/lib/washtml.php new/roundcubemail-0.8.4/program/lib/washtml.php --- old/roundcubemail-0.8.3/program/lib/washtml.php 2012-11-10 15:15:21.000000000 +0100 +++ new/roundcubemail-0.8.4/program/lib/washtml.php 2012-11-14 21:30:27.000000000 +0100 @@ -102,7 +102,7 @@ 'cellpadding', 'valign', 'bgcolor', 'color', 'border', 'bordercolorlight', 'bordercolordark', 'face', 'marginwidth', 'marginheight', 'axis', 'border', 'abbr', 'char', 'charoff', 'clear', 'compact', 'coords', 'vspace', 'hspace', - 'cellborder', 'size', 'lang', 'dir', 'usemap', 'shape', + 'cellborder', 'size', 'lang', 'dir', 'usemap', 'shape', 'media', // attributes of form elements 'type', 'rows', 'cols', 'disabled', 'readonly', 'checked', 'multiple', 'value' ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/roundcubemail-0.8.3/program/steps/mail/compose.inc new/roundcubemail-0.8.4/program/steps/mail/compose.inc --- old/roundcubemail-0.8.3/program/steps/mail/compose.inc 2012-11-10 15:15:21.000000000 +0100 +++ new/roundcubemail-0.8.4/program/steps/mail/compose.inc 2012-11-14 21:30:28.000000000 +0100 @@ -901,9 +901,10 @@ if (!$bodyIsHtml) { $body = preg_replace('/\r?\n/', "\n", $body); + $body = trim($body, "\n"); // soft-wrap and quote message text - $body = rcmail_wrap_and_quote(rtrim($body, "\n"), $LINE_LENGTH); + $body = rcmail_wrap_and_quote($body, $LINE_LENGTH); $prefix .= "\n"; $suffix = ''; @@ -947,8 +948,7 @@ $date = format_date($MESSAGE->headers->date, $RCMAIL->config->get('date_long')); $charset = $RCMAIL->output->get_charset(); - if (!$bodyIsHtml) - { + if (!$bodyIsHtml) { $prefix = "\n\n\n-------- " . rcube_label('originalmessage') . " --------\n"; $prefix .= rcube_label('subject') . ': ' . $MESSAGE->subject . "\n"; $prefix .= rcube_label('date') . ': ' . $date . "\n"; @@ -961,9 +961,9 @@ $prefix .= rcube_label('replyto') . ': ' . $MESSAGE->get_header('replyto') . "\n"; $prefix .= "\n"; + $body = trim($body, "\r\n"); } - else - { + else { // set is_safe flag (we need this for html body washing) rcmail_check_safe($MESSAGE); // clean up html tags diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/roundcubemail-0.8.3/program/steps/mail/func.inc new/roundcubemail-0.8.4/program/steps/mail/func.inc --- old/roundcubemail-0.8.3/program/steps/mail/func.inc 2012-11-10 15:15:21.000000000 +0100 +++ new/roundcubemail-0.8.4/program/steps/mail/func.inc 2012-11-14 21:30:28.000000000 +0100 @@ -740,7 +740,9 @@ else if ($data['type'] == 'enriched') { $part->ctype_secondary = 'html'; require_once(INSTALL_PATH . 'program/lib/enriched.inc'); - $body = Q(enriched_to_html($data['body']), 'show'); + $body = enriched_to_html($data['body']); + $body = rcmail_wash_html($body, $data, $part->replaces); + $part->ctype_secondary = 'html'; } else { // assert plaintext @@ -789,8 +791,8 @@ // find/mark quoted lines... for ($n=0, $cnt=count($body); $n < $cnt; $n++) { - if ($body[$n][0] == '>' && preg_match('/^(>+\s*)+/', $body[$n], $regs)) { - $q = strlen(preg_replace('/\s/', '', $regs[0])); + if ($body[$n][0] == '>' && preg_match('/^(>+ {0,1})+/', $body[$n], $regs)) { + $q = substr_count($regs[0], '>'); $body[$n] = substr($body[$n], strlen($regs[0])); if ($q > $quote_level) { @@ -1499,7 +1501,7 @@ $out .= $line . "\n"; } - return $out; + return rtrim($out, "\n"); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/roundcubemail-0.8.3/skins/larry/svggradient.php new/roundcubemail-0.8.4/skins/larry/svggradient.php --- old/roundcubemail-0.8.3/skins/larry/svggradient.php 2012-11-10 15:15:22.000000000 +0100 +++ new/roundcubemail-0.8.4/skins/larry/svggradient.php 2012-11-14 21:30:28.000000000 +0100 @@ -13,6 +13,8 @@ * $Id$ */ +ini_set('error_reporting', E_ALL &~ (E_NOTICE | E_STRICT)); + header('Content-Type: image/svg+xml'); header("Expires: ".gmdate("D, d M Y H:i:s", time()+864000)." GMT"); header("Cache-Control: max-age=864000"); -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org