[R-pkg-devel] [CRAN-pretest-archived] CRAN Submission NMRphasing 1.0.6
Dear Aixiang, Welcome to R-package-devel! ? Tue, 17 Dec 2024 09:47:26 +0000 Aixiang Jiang <aijiang at bccrc.ca> ?????:
I am really confused by the error, which did not happen in the previous versions. Since I have not changed my code at all, the possible reason is that the external function is changed.
That's right, you've found a bug in the MassSpecWavelet package. It's been introduced more than two years ago: https://code.bioconductor.org/browse/MassSpecWavelet/commit/ea0f727ffc391fa2643f858844836d8297742433 The code finds out the length of the vector and a pointer to the start of its data:
double *x;
R_xlen_t xlength = Rf_length(s_x);
x = REAL(s_x);
Later, the code tries to limit the offset into the array...
i2 = i2 >= xlength ? xlength : i2;
...and accesses the data at this offset:
if (xmax > x[i2] && xmax > x[j-1]) {
Unfortunately, it is an error to access data at i2 equal to xlength. The correct maximum for i2 must be xlength-1, the last valid element of x. Try reporting this to the maintainer at <https://support.bioconductor.org/> or at <http://github.com/zeehio/MassSpecWavelet/issues>.
Best regards, Ivan