From 3ecfce3c73e28117ec6768946e54041142e13d03 Mon Sep 17 00:00:00 2001 From: Shin-ya Murakami <86389420+murashinln@users.noreply.github.com> Date: Sat, 31 Aug 2024 01:04:50 +0900 Subject: [PATCH] Fix detached label support for kaguyasp2ascii (#5607) * Fixed kaguyasp2ascii with detached label data input - Fixed condition to check whether input file is attached label or detached label. - Fixed input file specification outside current directory for detached label case * Updated changelog * Updated creaters --- .zenodo.json | 4 ++++ CHANGELOG.md | 4 ++++ isis/src/kaguya/apps/kaguyasp2ascii/main.cpp | 15 ++++++++++++--- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/.zenodo.json b/.zenodo.json index bb5af05e1c..dc6c0adeaf 100644 --- a/.zenodo.json +++ b/.zenodo.json @@ -336,6 +336,10 @@ { "name": "Miller-Ribelin, Elizabeth" }, + { + "affiliation": "Japan Aerospace Exploration Agency, Institute of Space and Astronautical Science", + "name": "Murakami, Shin-ya", + "orcid": "0000-0002-7137-4849" { "affiliation": "United States Geological Survey, Astro Geology Science Center", "name": "Nelson, Gavin" diff --git a/CHANGELOG.md b/CHANGELOG.md index aba827254e..33e339fb97 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -35,6 +35,10 @@ release. ## [Unreleased] +### Fixed + +- Fixed a bug in kaguyasp2isis that doesn't work for data with a detached label. + ## [8.3.0] - 2024-08-16 ### Added diff --git a/isis/src/kaguya/apps/kaguyasp2ascii/main.cpp b/isis/src/kaguya/apps/kaguyasp2ascii/main.cpp index ac42ba6e28..a298615b59 100644 --- a/isis/src/kaguya/apps/kaguyasp2ascii/main.cpp +++ b/isis/src/kaguya/apps/kaguyasp2ascii/main.cpp @@ -11,6 +11,7 @@ find files of those names at the top level of this repository. **/ #include #include #include +#include #include "ProcessImportPds.h" @@ -32,12 +33,20 @@ void IsisMain() { // Detached labels use format keyword = "dataFile" value int keywordIndex = 1; - if (FileName(inFile).baseName() == FileName(dataFile).baseName()){ - // data files usually do not include path information. If input basename matches datafile basename, include path information - // this allows users to specify data that is not in the current directory. + // Determine label for inFile is attached label or detached label + if (FileName(inFile).name() == FileName(dataFile).name()){ + // If input filename matches datafile filename without path information, + // one assumes label file for inFile is attached label, otherwise + // detached label. dataFile = inFile; // Attached labels use format keyword = value keywordIndex = 0; + } else { + // data files specification in label usually do not include path + // information. If label is detached label, data file is located at + // the same directory as label file. + // this allows users to specify data that is not in the current directory. + dataFile = FileName(inFile).dir().path() + "/" + dataFile; } ofstream os;