From 50d1788d3d98c8b0fd341e3802fa8dbf3ce48af6 Mon Sep 17 00:00:00 2001 From: Javen O'Neal Date: Tue, 19 Jul 2016 08:02:41 +0000 Subject: [PATCH] bug 59881: fix D* functions for blank cells in headers in database; patch from Patrick Zimmermann git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1753346 13f79535-47bb-0310-9956-ffa450edef68 --- .../poi/ss/formula/functions/DStarRunner.java | 3 +++ test-data/spreadsheet/DGet.xls | Bin 51712 -> 51712 bytes 2 files changed, 3 insertions(+) diff --git a/src/java/org/apache/poi/ss/formula/functions/DStarRunner.java b/src/java/org/apache/poi/ss/formula/functions/DStarRunner.java index b743d3e11..6a87a67a6 100644 --- a/src/java/org/apache/poi/ss/formula/functions/DStarRunner.java +++ b/src/java/org/apache/poi/ss/formula/functions/DStarRunner.java @@ -193,6 +193,9 @@ public final class DStarRunner implements Function3Arg { final int width = db.getWidth(); for(int column = 0; column < width; ++column) { ValueEval columnNameValueEval = db.getValue(0, column); + if(solveReference(columnNameValueEval) instanceof BlankEval) { + continue; + } String columnName = getStringFromValueEval(columnNameValueEval); if(name.equals(columnName)) { resultColumn = column; diff --git a/test-data/spreadsheet/DGet.xls b/test-data/spreadsheet/DGet.xls index 860158611e34a6b4e636974291545282b12c5465..5d254febeb15659303de31134301f5446aaa2924 100644 GIT binary patch delta 4582 zcmai%d2kc=702Hmk|h~i@_kDyz~K9oWrJgbjKM>>4CaahWqhm;Yzr#OO=FT^8jfk{ zw2q(SB$OV6;GqXJgAyj4VH)?3w)ule)9E#nVTwtarUR2sI#b$|I;h`W%O+=hN8HD)qRg*|>rI5? z_a*G)S#h0UV?}bt_|N1S$&9%QIg>w>iUliVGcAoYE`T7C6%$TEsXSn^8;q12x+*be^9@s?6i0b%GuwH{l*k`gEZk}~Nt?;UiRP_R5xLo8Nrjw+ zkC}H1h5WwRE0pj$%Sox2>M>_$OS~oU4@;`NHV$?^2r5LANlEWG-f@sTrOZ+)X|Y@w ze>wi;_=Rx;70!=;$|bf{{GlzAe{8L=8K^ik3_Tp&X{+OFm=vvVtbgfq_?zKB zT2p1ndS;~Yn`P_9diIc%KmNaXK3Y7LdRLmYcD?EI<2CsZxY zf7fZ@OG-V@I_>;ONfB!JymKYHor>Vrd&is#k2@gatQYF|jGcc-p{go4@ z9WeSUDbNrp5eQc#q9_L9nvO_~K-5Gc%3>h03NuQK}&v z5r`-mDT#qNts|5OM3jtF#6WzkBb*V4C>e3ZKs33w{lgQcws2#l zte^=nA5bd%_5wT1|EzU2rC}qnX^I1bcYUh2TlFcs)vx&{OfBI6u_kEK0RwnRxvR&) zOWj&TSgu~4Z=y1ih+0OVxh7mw$PP->f_V9Pd-ck4naal`L`w;mGDz@d3mrkEv{-3} z7NH9MRn4wq3svG}h_)Z`_m57Py2CX^3pBSw(+{Uc`FZyiWTa}$fP1VAmoyj<(N@@g z1UXR=1b^s02~@2`udS0g_!kxC zVwq@+U_qTL%6PF#frM6En8>} z>t<-Liam(zj4Q24U@@6$C?O1@M7~H!wqQaG%%$q04aq2+OBj*WQA&!%z-vhr|EM~5 zb8y{HZ{9;xG^=Wt5+jSHlpKr5hg?PLlBsSf!xd2tq?DM98?M}~X|zUL>w8t-fOqa_ zk6%^V)xklOi9O+Q7BjKd_v%p|K$hm{s1{>fE7XqvLHtxcU$YA9Z0(pFWu3`bXZ!G! z^dV1rod~Tnnd-;lAiuOy#38TY^5K;tg`Uu=^u7+C_w$cv{*q-X#-mK{)7O+2b}l@h zPt_^gSxln_&3WBpWe%(CsBf-E^-h@1E^$5s&M&$Nm*+wY?kJp@Lm&X=bCvCUtga{R z)jgVLakNYA=vKC=r%;bB?&p8kHAXbCHz|FP z$2t$vH9U8so1jOu4edU(&!Iho_OEC^M%!8ovjO>X9Z?@Xsct<%^fx2Xvv`d@jRLy0 z5jn-<`_*-Lxo8C&)0j1zJy2WGTLisAD~5`>q*)`lz=7vKePtKHGLzIg71?( zXb+(s-9&T}u@YK{;**F@pgoKBy_Ue~t#2+f{%kK%@qS+a2Mo_ zYW~4tdqC{%%oA!Ro=@jvC#QrKbOHsZ9wbN#HSwJ@Ib6>T=x@;bQ(TRHv)=!Rw-^}fb+EiA;pL-@PtOjZrO>fH`CX7{l(HsK{TQm8ELaV(}kHWbTTB@Mdr_G zbwN|pI(#uZJ(xrJohX4u$Y)5j`{^V3U8sfUF1kv0(oaI_-I#2lQ;Sz->_Ly`EZQ93 zzUbI*Le4(? zwQqh@?|J`JRCg;~;fB}qj}v+;L*qTLcRmW5*F7+AgYIg;oho+19*=dE}oL0=_dFz=!&Hhf10(Yi&ScSiH<@KAHS}r`k rPPN}Z+&OsH?^k`=D*}m-xu1CL*MlNIchJQCcTbAG*8&gUH46U+RZgvS delta 4716 zcmaKwYj6|S6@bsKR?e z7dS6yp%9pIxFnXtFo;kAPP!_<4V$R$0<|82YXKeDpM<>tyC4W-uqUNpPDQuCwSgWS z>KYno@TU!*>KC|P;K@8y+aIftOqp9@i;5|awH<;w@B=fFG3UArk4Sw=uc%36>ewrZ zl*?*U3Z#2GNOysA!dj>S7;)8!70!wZ_lRrL@QP=tz1&q!ts}1X5tqOnr|`5Yti%AH zZ%e7ph?vwqw>;!>B$o|pgErZaP4fM*Q9h`L#uY|2xHIfZRnw-mwJjUxg>zCeEvL{h z;6rUS^Ai+x?aU$ube-CtN+H9)=u2?Dt^~iY%heo$^LSquW!}SaeOPk=T5*^c(7|V8 zp*|Oq$lO8=fx{@rWRxAlUG(V8q{+Sg8gr#;Wv;XenzT~I+9efHm#pGK8oHUPCeu}+!CA#a zEocBb17k6ML#8QAX;K57wB?WC*`~^t9D2!T0dxgIqcfpEbRrUt@y9a>wjh}Wsl(YQ z%+L`n08u)iMIemU#^H??I-JnEr0YO%bW-dJhC(rZPNASMX(R;)=;SpDlN6yYdI~`Z zXZ=HS$Z}9WuSv#uF_Y42l3J3Cz(M*8$a}XW>zvn-Y^_38mo%)972yTS?mbJ4Yn~&f zTETEhp5{$6nx?-Xgvq#LOGv}Ko{$CwqEBYiFquT=VEJ@9$pP3hI~59q1JTIzF}&n< z*k)l$c3fC?UW5ibhJSLG*BZ!94xlFzp-64Y9E~YSa?nE#h)}F5Je6KEc)$R#H5eG1 z2=5o^#nzKaXmZF6TWKy7U5Zc`_TyXLx@I%I>{f8Jpp~3e$x)D+@ExzcCE0fA))y2A zWX<4RsfCucQcJE<3r2i(WVLT4N13h2NR4e3_XnT7-U#dHxCFi7shMbupUIpln@2YF z(hR348d3aR<1l5iU&`cd6XD6=SUM5=6jTvq@;2EsljNnb6{*<1u3D1~&3MGKtA+wH z4-|cGCe1)n2RkSl({e(F@P1Pf1#rC-z#WljFvjo81Xv>lPy(V5#D9DG8nR#meVo9~ znW#LcqYCkS(!W!hPkL6?#$t>&bZI!)h#gI(^sz8aIVxppG@YkLI`fl{`X{0x8s3ws zPh%k;_0w#llzKrTSdz^KJ#7r#{Vyh~sKy{`gw3*wNHjnzS8-C(6w4~483cd{;keu9 zw?YePfq}quSjxiw;4FowEpuo#ix$cNG1FvhDiMu-5r6F;&o3B|Y}dms%3^VQ@FeMS z58?LaRt*F7_(t=KdT;Jc2H^cfvbiC5E(urYQ|e+fNMpi(sFe6>I$eH`%Gas0cL2^`UjQIP|`ft1#pGR zx2dEQflJ*0CVG#a^K1dongOnT13;v2@2{yGp|WBtzzJIC7pTm#0@U>ayhi2G-h`p= z<7}OC5a4IK@$;cKab&Q+jE9$G`vI;_TBH<^>trxkoX8<0( z4lw*9;>2?)7V#9y~NIBxZv99F&XjKMX`|_|KQm z&{_KQO9hD^z4E}s0G>WQM4|7(Uz{pML(D6sf&4ra>!as&^jwJ7VjU#O;Ioufo56%1 zVKGLqh1%Z7A-T;aw^hZxa;*SAh!^9LxR-&%h4{m)#3u{I4BmaG61&e97JOX_Rbwzt z6V^ka2KtXis)8_%htB%uI^novDZM$ysIwbhUaFbt?IiVmmr`>KEYwH8c1bcw4;HAT zJHzUzrlTDo)vkv=I6>{Hnjx(rRWq*89t1ONktA{VyZLiEc#b~PQq(wE(E}%!Y6g;9 z?lY$Qeh;~DkMe64cGHV&lC+(MZ$m4a3s-g9h;64!`t{NE8lOX#TutAep~IC0G~4AW zBRy=#<3r^bJ@+WK=w?1f&tgUKcc@oN^*CLWfv`ZAjjl_0aIxM-DYxqXKOZix)z826 zp`ZWP?ZlrK*I01sh7Q@Q4b0!rbM=;)(isLK)02k}1cTAT3Ckz<&A2egUAZ1&`GuQj TdI@7NdgBDEdpGguhK~6^vdN5?