forked from enlightenment/efl
eolian: use libgen.h basename
This commit is contained in:
parent
5a67cc997d
commit
a3182948ad
|
@ -1,4 +1,5 @@
|
|||
#include <getopt.h>
|
||||
#include <libgen.h>
|
||||
|
||||
#include <Eina.h>
|
||||
|
||||
|
@ -327,9 +328,10 @@ int main(int argc, char **argv)
|
|||
{
|
||||
EINA_LIST_FOREACH(files4gen, itr, filename)
|
||||
{
|
||||
char *bn = eina_file_path_basename(filename, NULL);
|
||||
char *dup = strdup(filename);
|
||||
char *bn = basename(dup);
|
||||
class = eolian_class_get_by_file(bn);
|
||||
free(bn);
|
||||
free(dup);
|
||||
if (class) eolian_show_class(class);
|
||||
}
|
||||
}
|
||||
|
@ -340,9 +342,10 @@ int main(int argc, char **argv)
|
|||
goto end;
|
||||
}
|
||||
|
||||
char *bn = eina_file_path_basename(eina_list_data_get(files4gen), NULL);
|
||||
char *dup = strdup(eina_list_data_get(files4gen));
|
||||
char *bn = basename(dup);
|
||||
class = eolian_class_get_by_file(bn);
|
||||
free(bn);
|
||||
free(dup);
|
||||
|
||||
if (gen_opt)
|
||||
{
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
#define EOLIAN_CXX_EOLIAN_WRAPPERS_HH
|
||||
|
||||
#include <cassert>
|
||||
#include <libgen.h>
|
||||
|
||||
#include <Eolian.h>
|
||||
|
||||
|
@ -30,9 +31,10 @@ ctor_t const ctor = {};
|
|||
inline const Eolian_Class*
|
||||
class_from_file(std::string const& file)
|
||||
{
|
||||
char *bn = eina_file_path_basename(file.c_str(), NULL);
|
||||
char *dup = strdup(file.c_str());
|
||||
char *bn = basename(dup);
|
||||
const Eolian_Class *cl = ::eolian_class_get_by_file(bn);
|
||||
free(bn);
|
||||
free(dup);
|
||||
return cl;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
#include <libgen.h>
|
||||
|
||||
#include "eo_parser.h"
|
||||
|
||||
#define CASE_LOCK(ls, var, msg) \
|
||||
|
@ -126,9 +128,10 @@ append_node(Eo_Lexer *ls, int type, void *def)
|
|||
static const char *
|
||||
get_filename(Eo_Lexer *ls)
|
||||
{
|
||||
char *s = eina_file_path_basename(ls->source, NULL);
|
||||
char *dup = strdup(ls->source);
|
||||
char *s = basename(dup);
|
||||
const char *file = eina_stringshare_add(s);
|
||||
free(s);
|
||||
free(dup);
|
||||
return file;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
#include <libgen.h>
|
||||
#include <Eina.h>
|
||||
#include "eo_parser.h"
|
||||
#include "eolian_database.h"
|
||||
|
@ -133,7 +134,8 @@ EAPI Eina_Bool
|
|||
eolian_eo_file_parse(const char *filepath)
|
||||
{
|
||||
Eina_Iterator *itr;
|
||||
char *bfilename = eina_file_path_basename(filepath, NULL);
|
||||
char *bfiledup = strdup(filepath);
|
||||
char *bfilename = basename(bfiledup);
|
||||
const Eolian_Class *class = eolian_class_get_by_file(bfilename);
|
||||
const char *inherit_name;
|
||||
Eolian_Implement *impl;
|
||||
|
@ -141,18 +143,18 @@ eolian_eo_file_parse(const char *filepath)
|
|||
{
|
||||
if (!eo_parser_database_fill(filepath, EINA_FALSE))
|
||||
{
|
||||
free(bfilename);
|
||||
free(bfiledup);
|
||||
return EINA_FALSE;
|
||||
}
|
||||
class = eolian_class_get_by_file(bfilename);
|
||||
if (!class)
|
||||
{
|
||||
ERR("No class for file %s", bfilename);
|
||||
free(bfilename);
|
||||
free(bfiledup);
|
||||
return EINA_FALSE;
|
||||
}
|
||||
}
|
||||
free(bfilename);
|
||||
free(bfiledup);
|
||||
itr = eolian_class_inherits_get(class);
|
||||
EINA_ITERATOR_FOREACH(itr, inherit_name)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue