Skip to content

Commit 250277f

Browse files
committed
safer as.character.nanoHash
1 parent 264b201 commit 250277f

File tree

4 files changed

+1
-15
lines changed

4 files changed

+1
-15
lines changed

R/sha.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ sha512 <- function(x, key = NULL) .Call(rnng_sha512, x, key)
142142

143143
#' @export
144144
#'
145-
as.character.nanoHash <- function(x, ...) .Call(rnng_hashToChar, x)
145+
as.character.nanoHash <- function(x, ...) paste0(unclass(x), collapse = "")
146146

147147
#' @export
148148
#'

src/init.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,6 @@ static const R_CallMethodDef CallEntries[] = {
7979
{"rnng_dialer_create", (DL_FUNC) &rnng_dialer_create, 2},
8080
{"rnng_dialer_set", (DL_FUNC) &rnng_dialer_set, 4},
8181
{"rnng_dialer_start", (DL_FUNC) &rnng_dialer_start, 2},
82-
{"rnng_hashToChar", (DL_FUNC) &rnng_hashToChar, 1},
8382
{"rnng_listen", (DL_FUNC) &rnng_listen, 2},
8483
{"rnng_listener_close", (DL_FUNC) &rnng_listener_close, 1},
8584
{"rnng_listener_create", (DL_FUNC) &rnng_listener_create, 2},

src/nanonext.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,6 @@ extern SEXP rnng_dialer_close(SEXP);
109109
extern SEXP rnng_dialer_create(SEXP, SEXP);
110110
extern SEXP rnng_dialer_set(SEXP, SEXP, SEXP, SEXP);
111111
extern SEXP rnng_dialer_start(SEXP, SEXP);
112-
extern SEXP rnng_hashToChar(SEXP);
113112
extern SEXP rnng_listen(SEXP, SEXP);
114113
extern SEXP rnng_listener_close(SEXP);
115114
extern SEXP rnng_listener_create(SEXP, SEXP);

src/sha.c

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -366,15 +366,3 @@ SEXP rnng_sha512(SEXP x, SEXP key) {
366366

367367
}
368368

369-
SEXP rnng_hashToChar(SEXP x) {
370-
371-
const unsigned char *hash = RAW(x);
372-
R_xlen_t xlen = Rf_xlength(x);
373-
char conv[xlen * 2];
374-
for (int i = 0, a = 0; i < xlen; i++, a += 2)
375-
sprintf(&conv[a], "%.2x", (int) hash[i]);
376-
377-
return Rf_mkString(conv);
378-
379-
}
380-

0 commit comments

Comments
 (0)