From 778846987aeda09f444e076fccad3b5a842316d5 Mon Sep 17 00:00:00 2001 From: Ferran Recio Date: Thu, 21 May 2020 15:26:52 +0200 Subject: [PATCH] MDL-67700 message: prevent async loading conversation message mix --- .../message_drawer_view_conversation.min.js | Bin 21373 -> 21460 bytes ...essage_drawer_view_conversation.min.js.map | Bin 144737 -> 145502 bytes .../src/message_drawer_view_conversation.js | 12 ++++++++++++ 3 files changed, 12 insertions(+) diff --git a/message/amd/build/message_drawer_view_conversation.min.js b/message/amd/build/message_drawer_view_conversation.min.js index 446a342b8bb0fa1d9eed1bbf47cc3d957e59526c..53c1f623fcb752123e52990e93ec9a7e8f48f120 100644 GIT binary patch delta 72 zcmeynjPc5H#ti{NrkN>0Lx|>QUCw| delta 14 Wcmcbzobm56#ti{No0kjeIsyPRnFb92 diff --git a/message/amd/build/message_drawer_view_conversation.min.js.map b/message/amd/build/message_drawer_view_conversation.min.js.map index bf01ac7170e3642b7c85c92e0fa654c5090e522d..dac3fc92edd90510640fb6e34aa74a29aa579537 100644 GIT binary patch delta 1346 zcmZ9~UuYaf90zb_FV!96pV%Ws(n43!Lb#)Qm%H3;w2|)ZUH)i8QiBx}{Bun@S!n823f^o+BA)QlHf>%76n^SsuZG6%|i2GTi6) zoB7U<*}MI#cw>o-j;)N=7rRUKF3nyOBOizbi63#vL5F2%AImZqU@YGEmr3lR%f zEtQLn&_|E;zFEnIEh{V*RLE2E;kN$<@_ULF1gdad8KN=})y~ByRCN;So$iZafM$;W zKj#Hr&>T4Q9RFF!$0w*zh<4X<1wMqG8<91-X+O#CYKKs77K%z(jE}2BT$-xTExV82 z)%LLQf`IlVweZ}4*4dKc(zsZ0F)*6tpPLi{E5rBYy%QDGhg~nz=ICZUZh86F5%`P$aL91Gsh#i?Ey=Kz5MD? zp5p`4?Ck5RfXfX~qrvW+JSyO96KJJtqmM#)4vve!bYOAH^FX|j)@{k0~I>p ztYd2skQih)os$u|$N!FA@X#GW)%~9T6Qv3m+)MzFAs$NOTrK z3QI39A^P!3H~sS6+amFH_iV1{NURf3nnqVY$A%9`_-uRiGXd8dz)F*yqF$HiCUy_r z_rW3l_(>2C|L{7(sR2+m#UA)*ho`22F?Q$lw1DM7ke{KWYx>?~22{yv6CV7>TXbt> zKigT0Al%ME&s69yXO=}r0i|i{>dRVwU`aOH-B9RuVU^qHL_ zf>mLyoi`?jWm%eX^}1dol5NfFuH@>AzU~oET5#>EG-uaHv1-J3)=(f#Qu-!19kC1Ge? zcRikI*QB}P98V>- D$e*x} delta 892 zcmXZZOH30{6b9hT6vDlUxIszmLKhl|4skktH)=vV6hS~B5;Q?YB`|%^(&EKz=cvzAY5;zAF7YHE!(x~{Ju**|afCMxLq`{R z8cHBD3D({{M_r~=6{?PPSg0q7#X${XJ#|JO9jU;hQ+}Q%(Nl;^>|RK7Zx+3 zF%bc27l1$W&O)+^TpUmsR?hWTl57GMg~q~Jj`~!Tnq+TBzY!@}O3sb-am1ma6jpQb zVP!%`cy+l|ZDG&GtiWFy=cyx&*IEW{jB8~ipD#7AUfF4^!iF+Fb@eqzMG2L%!`5rd zMt27?2J6=k^EB>4*M4Utl_A~jYZYN{@olQSr1BKg{e^*_adBLwqyDN z6-}jl?8)>9k$hN-vX)!lsV*SA0{CuUHvU^gY6|;!=M#~XdUHavcQuZ>LMSZ^j(bik zk+f2A@Og}*krc|7f*&tJ#_lu7R2I5k-ZvJJH)(^)CAWp-?Z_B3zv;2igbS5(1H88q xDvC(s2_KddG^+%QPp~PhZDk*?N1(7W)HYF9&XrA^*v(Z8uL<1jn!umj@E?5VCj$Tg diff --git a/message/amd/src/message_drawer_view_conversation.js b/message/amd/src/message_drawer_view_conversation.js index 31ccbaea49a..03854ff9bc2 100644 --- a/message/amd/src/message_drawer_view_conversation.js +++ b/message/amd/src/message_drawer_view_conversation.js @@ -506,6 +506,18 @@ function( newestFirst, timeFrom ) + .then(function(result) { + // Prevent older requests from contaminating the current view. + if (result.id != viewState.id) { + result.messages = []; + // Purge old conversation cache to prevent messages lose. + if (result.id in stateCache) { + delete stateCache[result.id]; + } + } + + return result; + }) .then(function(result) { if (result.messages.length && ignoreList.length) { result.messages = result.messages.filter(function(message) { -- 2.43.0