From 56fc9552a4957b765197388be4e70a7fcbacaca8 Mon Sep 17 00:00:00 2001
From: Giovanni Bussi <giovanni.bussi@gmail.com>
Date: Tue, 2 Jul 2019 16:28:49 +0200
Subject: [PATCH] Using h36encode in another place

cc: @gtribello

This code is not going through regtests
https://www.plumed.org/coverage-master/coverage/tools/PDB.cpp.gcov.html
so I am a bit worried in editing it
---
 src/tools/PDB.cpp | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/tools/PDB.cpp b/src/tools/PDB.cpp
index b42d8fd06..77e7e464d 100644
--- a/src/tools/PDB.cpp
+++ b/src/tools/PDB.cpp
@@ -546,8 +546,12 @@ void PDB::print( const double& lunits, SetupMolInfo* mymoldat, OFile& ofile, con
     }
   } else {
     for(unsigned i=0; i<positions.size(); ++i) {
-      ofile.printf("ATOM  %5d %-4s %3s  %4u    %8.3f%8.3f%8.3f%6.2f%6.2f\n",
-                   numbers[i].serial(), mymoldat->getAtomName(numbers[i]).c_str(),
+      std::array<char,6> at;
+      const char* msg = h36::hy36encode(5,numbers[i].serial(),&at[0]);
+      plumed_assert(msg==nullptr) << msg;
+      at[5]=0;
+      ofile.printf("ATOM  %s %-4s %3s  %4u    %8.3f%8.3f%8.3f%6.2f%6.2f\n",
+                   &at[0], mymoldat->getAtomName(numbers[i]).c_str(),
                    mymoldat->getResidueName(numbers[i]).c_str(), mymoldat->getResidueNumber(numbers[i]),
                    lunits*positions[i][0], lunits*positions[i][1], lunits*positions[i][2],
                    occupancy[i], beta[i] );
-- 
GitLab