<div dir="ltr">
<p class="">Hi, Kevin, I was also trying to track this down yesterday.</p><p class="">From the debugging info below, <b>indices_n</b> is not equal to length of <b>indices</b>, which I don't quite understand.</p><p class=""><span class="">Program received signal SIGSEGV, Segmentation fault.</span></p>
<p class=""><span class="">0x00007ffff2ed5c4e in Rcpp::SubsetProxy<13, Rcpp::PreserveStorage, 13, true, Rcpp::sugar::Minus_Vector_Primitive<13, true, Rcpp::Vector<13, Rcpp::PreserveStorage> > >::get_vec (this=this@entry=0x7fffffff79a0)</span></p>
<p class=""><span class=""> at /usr/local/lib/R/site-library/Rcpp/include/Rcpp/vector/Subsetter.h:200</span></p>
<p class=""><span class=""><span class="">199 </span> output[i] = lhs[ indices[i] ];</span></p>
<p class=""><span class="">(gdb) p i</span></p>
<p class=""><span class="">$1 = 33622</span></p>
<p class=""><span class="">(gdb) p indices[i]</span></p>
<p class=""><span class="">Cannot access memory at address 0x34c6e000</span></p>
<p class=""><span class="">(gdb) p indices_n</span></p>
<p class=""><span class="">$2 = 9594546</span></p></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jan 29, 2016 at 2:29 PM, Dirk Eddelbuettel <span dir="ltr"><<a href="mailto:edd@debian.org" target="_blank">edd@debian.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br>
On 29 January 2016 at 11:27, Kevin Ushey wrote:<br>
| When I add some debug printing to the associated subscripting line<br>
| (<a href="https://github.com/awalker89/openxlsx/blob/b92bb3acdd6ea759be928c298c6faeef2f26fa3e/src/cppFunctions.cpp#L2608" rel="noreferrer" target="_blank">https://github.com/awalker89/openxlsx/blob/b92bb3acdd6ea759be928c298c6faeef2f26fa3e/src/cppFunctions.cpp#L2608</a>),<br>
| I see:<br>
|<br>
| colNumbers.size(): 98,03,150<br>
| charCols.size(): 95,94,546<br>
|<br>
| It looks to me like the package is erroneously attempting to subset<br>
| vectors of different sizes, causing out-of-bounds reads.<br>
<br>
</span>Nice work.<br>
<span class=""><br>
| Unfortunately, Rcpp is not detecting or warning about this...<br>
|<br>
| Either way, I believe this is a bug in the openxlsx package, but Rcpp<br>
| should be checking / reporting this.<br>
<br>
</span>With (Rcpp)Armadillo you do have an option of turning this on/off. With Rcpp<br>
alone not quite.<br>
<span class="HOEnZb"><font color="#888888"><br>
Dirk<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
--<br>
<a href="http://dirk.eddelbuettel.com" rel="noreferrer" target="_blank">http://dirk.eddelbuettel.com</a> | @eddelbuettel | <a href="mailto:edd@debian.org">edd@debian.org</a><br>
_______________________________________________<br>
Rcpp-devel mailing list<br>
<a href="mailto:Rcpp-devel@lists.r-forge.r-project.org">Rcpp-devel@lists.r-forge.r-project.org</a><br>
<a href="https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel" rel="noreferrer" target="_blank">https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr">Qiang Kou<div><a href="mailto:qkou@umail.iu.edu" target="_blank">qkou@umail.iu.edu</a><br><div>School of Informatics and Computing, Indiana University</div><div><br></div></div></div></div>
</div>