diff --git a/shared/src/main/scala/io/kaitai/struct/translators/BaseTranslator.scala b/shared/src/main/scala/io/kaitai/struct/translators/BaseTranslator.scala index 421038bfa..1dd550666 100644 --- a/shared/src/main/scala/io/kaitai/struct/translators/BaseTranslator.scala +++ b/shared/src/main/scala/io/kaitai/struct/translators/BaseTranslator.scala @@ -175,7 +175,7 @@ abstract class BaseTranslator(val provider: TypeProvider) doIntLiteral(CommonSizeOf.getByteSizeOfClassSpec(cs)) def doArrayLiteral(t: DataType, value: Seq[Ast.expr]): String = "[" + value.map((v) => translate(v)).mkString(", ") + "]" - def doByteArrayLiteral(arr: Seq[Byte]): String = "[" + arr.map(_ & 0xff).mkString(", ") + "]" + def doByteArrayLiteral(arr: Seq[Byte]): String def doByteArrayNonLiteral(elts: Seq[Ast.expr]): String = ??? def doLocalName(s: String): String = doName(s) diff --git a/shared/src/main/scala/io/kaitai/struct/translators/RubyTranslator.scala b/shared/src/main/scala/io/kaitai/struct/translators/RubyTranslator.scala index 8018430dc..6203d21fb 100644 --- a/shared/src/main/scala/io/kaitai/struct/translators/RubyTranslator.scala +++ b/shared/src/main/scala/io/kaitai/struct/translators/RubyTranslator.scala @@ -9,7 +9,7 @@ import io.kaitai.struct.languages.RubyCompiler class RubyTranslator(provider: TypeProvider) extends BaseTranslator(provider) with ByteArraysAsTrueArrays[String] { override def doByteArrayLiteral(arr: Seq[Byte]): String = - s"${super.doByteArrayLiteral(arr)}.pack('C*')" + s"[${arr.map(_ & 0xff).mkString(", ")}].pack('C*')" override def doByteArrayNonLiteral(elts: Seq[Ast.expr]): String = s"[${elts.map(translate).mkString(", ")}].pack('C*')"