@@ -323,7 +323,7 @@ namespace Sass {
323
323
// (2) underscore + given
324
324
// (3) underscore + given + extension
325
325
// (4) given + extension
326
- std::vector<Include> resolve_includes (const std::string& root, const std::string& file, const std::vector<std::string>& exts)
326
+ std::vector<Include> resolve_includes (const std::string& root, const std::string& file, const std::vector<std::string>& exts, const std::vector<std::string>& d_exts )
327
327
{
328
328
std::string filename = join_paths (root, file);
329
329
// split the filename
@@ -350,6 +350,18 @@ namespace Sass {
350
350
abs_path = join_paths (root, rel_path);
351
351
if (file_exists (abs_path)) includes.push_back ({{ rel_path, root }, abs_path });
352
352
}
353
+ // next test d_exts plus underscore
354
+ for (auto ext : d_exts) {
355
+ rel_path = join_paths (base, " _" + name + ext);
356
+ abs_path = join_paths (root, rel_path);
357
+ if (file_exists (abs_path)) includes.push_back ({{ rel_path, root }, abs_path });
358
+ }
359
+ // next test plain name with d_exts
360
+ for (auto ext : d_exts) {
361
+ rel_path = join_paths (base, name + ext);
362
+ abs_path = join_paths (root, rel_path);
363
+ if (file_exists (abs_path)) includes.push_back ({{ rel_path, root }, abs_path });
364
+ }
353
365
// nothing found
354
366
return includes;
355
367
}
0 commit comments