For widgets that are fully HTML, the search of the content
was not checking the subdirectory "htdocs" that is enforced
elsewhere.
This commits add the search of the content in the subdirectory
"htdocs". This is a temporarily fix. A better complete solution
has to be delivered later.
Bug-AGL: SPEC-808
Change-Id: I8bef7c4a31ff919827ceca05e203c2b277cf7657
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
if (!src) {
ERROR("a content src is missing");
if (!src) {
ERROR("a content src is missing");
/* TODO: when dealing with HTML and languages, the check should
* include i18n path search of widgets */
rc = fstatat(workdirfd, src, &s, AT_NO_AUTOMOUNT|AT_SYMLINK_NOFOLLOW);
/* TODO: when dealing with HTML and languages, the check should
* include i18n path search of widgets */
rc = fstatat(workdirfd, src, &s, AT_NO_AUTOMOUNT|AT_SYMLINK_NOFOLLOW);
+ if (rc < 0) {
+ serr = errno;
+ fhtdocs = openat(workdirfd, "htdocs", O_DIRECTORY|O_PATH);
+ if (fhtdocs >= 0) {
+ rc = fstatat(fhtdocs, src, &s, AT_NO_AUTOMOUNT|AT_SYMLINK_NOFOLLOW);
+ serr = errno;
+ close(fhtdocs);
+ }
+ errno = serr;
+ }
if (rc < 0)
ERROR("can't get info on content %s: %m", src);
else if (!S_ISREG(s.st_mode)) {
if (rc < 0)
ERROR("can't get info on content %s: %m", src);
else if (!S_ISREG(s.st_mode)) {