From 04e2eccaa96f8fbd634ab7a502c16f8ff729ad4d Mon Sep 17 00:00:00 2001 From: Syoyo Fujita Date: Wed, 22 Aug 2012 01:38:02 +0900 Subject: [PATCH] Fix build on linux. --- test.cc | 7 +++++++ tiny_obj_loader.cc | 11 +++++++---- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/test.cc b/test.cc index 0515d99..8916696 100644 --- a/test.cc +++ b/test.cc @@ -1,5 +1,7 @@ #include "tiny_obj_loader.h" +#include +#include #include #include @@ -51,6 +53,11 @@ main( printf(" material.map_Kd = %s\n", shapes[i].material.diffuse_texname.c_str()); printf(" material.map_Ks = %s\n", shapes[i].material.specular_texname.c_str()); printf(" material.map_Ns = %s\n", shapes[i].material.normal_texname.c_str()); + std::map::iterator it(shapes[i].material.unknown_parameter.begin()); + std::map::iterator itEnd(shapes[i].material.unknown_parameter.end()); + for (; it != itEnd; it++) { + printf(" material.%s = %s\n", it->first.c_str(), it->second.c_str()); + } printf("\n"); } diff --git a/tiny_obj_loader.cc b/tiny_obj_loader.cc index e43c1c4..ac93e3d 100644 --- a/tiny_obj_loader.cc +++ b/tiny_obj_loader.cc @@ -5,11 +5,14 @@ // // -// version 0.9.1: Add initial .mtl load suppor +// version 0.9.2: Add more .mtl load support +// version 0.9.1: Add initial .mtl load support // version 0.9.0: Initial // +#include +#include #include #include @@ -403,13 +406,13 @@ std::string LoadMtl ( } // unknown parameter - char* _space = strchr(token, ' '); + const char* _space = strchr(token, ' '); if(!_space) { _space = strchr(token, '\t'); } if(_space) { - *_space = '\0'; - std::string key = token; + int len = _space - token; + std::string key(token, len); std::string value = _space + 1; material.unknown_parameter.insert(std::pair(key, value)); }