Skip to content
Back to formatted view

Raw Message

Message-ID: <9779FEE0-79EE-493D-8599-74A103AA01B9@oracle.com>
Date: 2017-11-09T15:34:49Z
From: Lukas Stadler
Subject: formatting raw vectors with names

I think there?s a bug concerning the formatting of raw vectors with names:

> structure(as.raw(1:3), .Names = c("a", "bbbb", "c"))
   a bbbb    c 
01 02 03 
> structure(1:3, .Names = c("a", "bbbb", "c"))
   a bbbb    c 
   1    2    3 

The problem is that EncodeRaw does not honor the requested width, in fact it doesn?t even get the width as a parameter.
An easy fix would be to change:

static void printNamedRawVector(Rbyte * x, int n, SEXP * names)
    PRINT_N_VECTOR(formatRaw(x, n, &w),
		   Rprintf("%s%*s", EncodeRaw(x[k], ""), R_print.gap,""))

to

static void printNamedRawVector(Rbyte * x, int n, SEXP * names)
    PRINT_N_VECTOR(formatRaw(x, n, &w),
		   Rprintf("%*s%s%*s", w - 2, "", EncodeRaw(x[k], ""), R_print.gap,""))

in printvector.c:314.

- Lukas