summaryrefslogtreecommitdiff
path: root/src/format/symbol.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/format/symbol.c')
-rw-r--r--src/format/symbol.c66
1 files changed, 35 insertions, 31 deletions
diff --git a/src/format/symbol.c b/src/format/symbol.c
index eb61db8..d3d5285 100644
--- a/src/format/symbol.c
+++ b/src/format/symbol.c
@@ -124,7 +124,11 @@ static void g_binary_symbol_class_init(GBinSymbolClass *klass)
static void g_binary_symbol_init(GBinSymbol *symbol)
{
- INIT_BIN_SYMBOL_EXTRA(symbol);
+ sym_extra_data_t *extra; /* Données insérées à modifier */
+
+ extra = GET_BIN_SYMBOL_EXTRA(symbol);
+
+ INIT_GOBJECT_EXTRA_LOCK(extra);
g_binary_symbol_set_stype(symbol, STP_COUNT);
@@ -331,15 +335,15 @@ const mrange_t *g_binary_symbol_get_range(const GBinSymbol *symbol)
void g_binary_symbol_set_stype(GBinSymbol *symbol, SymbolType type)
{
- sym_obj_extra *extra; /* Données insérées à modifier */
+ sym_extra_data_t *extra; /* Données insérées à modifier */
extra = GET_BIN_SYMBOL_EXTRA(symbol);
- g_bit_lock(&extra->lock, HOLE_LOCK_BIT);
+ LOCK_GOBJECT_EXTRA(extra);
extra->stype = type;
- g_bit_unlock(&extra->lock, HOLE_LOCK_BIT);
+ UNLOCK_GOBJECT_EXTRA(extra);
}
@@ -359,15 +363,15 @@ void g_binary_symbol_set_stype(GBinSymbol *symbol, SymbolType type)
SymbolType g_binary_symbol_get_stype(const GBinSymbol *symbol)
{
SymbolType result; /* Type à retourner */
- sym_obj_extra *extra; /* Données insérées à modifier */
+ sym_extra_data_t *extra; /* Données insérées à modifier */
extra = GET_BIN_SYMBOL_EXTRA(symbol);
- g_bit_lock(&extra->lock, HOLE_LOCK_BIT);
+ LOCK_GOBJECT_EXTRA(extra);
result = extra->stype;
- g_bit_unlock(&extra->lock, HOLE_LOCK_BIT);
+ UNLOCK_GOBJECT_EXTRA(extra);
return result;
@@ -389,15 +393,15 @@ SymbolType g_binary_symbol_get_stype(const GBinSymbol *symbol)
void g_binary_symbol_set_status(GBinSymbol *symbol, SymbolStatus status)
{
- sym_obj_extra *extra; /* Données insérées à modifier */
+ sym_extra_data_t *extra; /* Données insérées à modifier */
extra = GET_BIN_SYMBOL_EXTRA(symbol);
- g_bit_lock(&extra->lock, HOLE_LOCK_BIT);
+ LOCK_GOBJECT_EXTRA(extra);
extra->status = status;
- g_bit_unlock(&extra->lock, HOLE_LOCK_BIT);
+ UNLOCK_GOBJECT_EXTRA(extra);
}
@@ -417,15 +421,15 @@ void g_binary_symbol_set_status(GBinSymbol *symbol, SymbolStatus status)
SymbolStatus g_binary_symbol_get_status(const GBinSymbol *symbol)
{
SymbolStatus result; /* Visibilité à retourner */
- sym_obj_extra *extra; /* Données insérées à modifier */
+ sym_extra_data_t *extra; /* Données insérées à modifier */
extra = GET_BIN_SYMBOL_EXTRA(symbol);
- g_bit_lock(&extra->lock, HOLE_LOCK_BIT);
+ LOCK_GOBJECT_EXTRA(extra);
result = extra->status;
- g_bit_unlock(&extra->lock, HOLE_LOCK_BIT);
+ UNLOCK_GOBJECT_EXTRA(extra);
return result;
@@ -448,17 +452,17 @@ SymbolStatus g_binary_symbol_get_status(const GBinSymbol *symbol)
bool g_binary_symbol_set_flag(GBinSymbol *symbol, SymbolFlag flag)
{
bool result; /* Bilan à retourner */
- sym_obj_extra *extra; /* Données insérées à modifier */
+ sym_extra_data_t *extra; /* Données insérées à modifier */
extra = GET_BIN_SYMBOL_EXTRA(symbol);
- g_bit_lock(&extra->lock, HOLE_LOCK_BIT);
+ LOCK_GOBJECT_EXTRA(extra);
result = !(extra->flags & flag);
extra->flags |= flag;
- g_bit_unlock(&extra->lock, HOLE_LOCK_BIT);
+ UNLOCK_GOBJECT_EXTRA(extra);
return result;
@@ -481,17 +485,17 @@ bool g_binary_symbol_set_flag(GBinSymbol *symbol, SymbolFlag flag)
bool g_binary_symbol_unset_flag(GBinSymbol *symbol, SymbolFlag flag)
{
bool result; /* Bilan à retourner */
- sym_obj_extra *extra; /* Données insérées à modifier */
+ sym_extra_data_t *extra; /* Données insérées à modifier */
extra = GET_BIN_SYMBOL_EXTRA(symbol);
- g_bit_lock(&extra->lock, HOLE_LOCK_BIT);
+ LOCK_GOBJECT_EXTRA(extra);
result = (extra->flags & flag);
extra->flags &= ~flag;
- g_bit_unlock(&extra->lock, HOLE_LOCK_BIT);
+ UNLOCK_GOBJECT_EXTRA(extra);
return result;
@@ -514,15 +518,15 @@ bool g_binary_symbol_unset_flag(GBinSymbol *symbol, SymbolFlag flag)
bool g_binary_symbol_has_flag(const GBinSymbol *symbol, SymbolFlag flag)
{
bool result; /* Bilan à retourner */
- sym_obj_extra *extra; /* Données insérées à modifier */
+ sym_extra_data_t *extra; /* Données insérées à modifier */
extra = GET_BIN_SYMBOL_EXTRA(symbol);
- g_bit_lock(&extra->lock, HOLE_LOCK_BIT);
+ LOCK_GOBJECT_EXTRA(extra);
result = (extra->flags & flag);
- g_bit_unlock(&extra->lock, HOLE_LOCK_BIT);
+ UNLOCK_GOBJECT_EXTRA(extra);
return result;
@@ -544,15 +548,15 @@ bool g_binary_symbol_has_flag(const GBinSymbol *symbol, SymbolFlag flag)
SymbolFlag g_binary_symbol_get_flags(const GBinSymbol *symbol)
{
SymbolFlag result; /* Fanions à retourner */
- sym_obj_extra *extra; /* Données insérées à modifier */
+ sym_extra_data_t *extra; /* Données insérées à modifier */
extra = GET_BIN_SYMBOL_EXTRA(symbol);
- g_bit_lock(&extra->lock, HOLE_LOCK_BIT);
+ LOCK_GOBJECT_EXTRA(extra);
result = extra->flags;
- g_bit_unlock(&extra->lock, HOLE_LOCK_BIT);
+ UNLOCK_GOBJECT_EXTRA(extra);
return result;
@@ -575,18 +579,18 @@ SymbolFlag g_binary_symbol_get_flags(const GBinSymbol *symbol)
bool g_binary_symbol_get_nm_prefix(const GBinSymbol *symbol, char *prefix)
{
bool result; /* Validité à retourner */
- sym_obj_extra *extra; /* Données insérées à modifier */
+ sym_extra_data_t *extra; /* Données insérées à modifier */
extra = GET_BIN_SYMBOL_EXTRA(symbol);
- g_bit_lock(&extra->lock, HOLE_LOCK_BIT);
+ LOCK_GOBJECT_EXTRA(extra);
result = (extra->flags & SFL_HAS_NM_PREFIX);
if (result)
*prefix = extra->nm_prefix;
- g_bit_unlock(&extra->lock, HOLE_LOCK_BIT);
+ UNLOCK_GOBJECT_EXTRA(extra);
return result;
@@ -607,16 +611,16 @@ bool g_binary_symbol_get_nm_prefix(const GBinSymbol *symbol, char *prefix)
void g_binary_symbol_set_nm_prefix(const GBinSymbol *symbol, char prefix)
{
- sym_obj_extra *extra; /* Données insérées à modifier */
+ sym_extra_data_t *extra; /* Données insérées à modifier */
extra = GET_BIN_SYMBOL_EXTRA(symbol);
- g_bit_lock(&extra->lock, HOLE_LOCK_BIT);
+ LOCK_GOBJECT_EXTRA(extra);
extra->nm_prefix = prefix;
extra->flags |= SFL_HAS_NM_PREFIX;
- g_bit_unlock(&extra->lock, HOLE_LOCK_BIT);
+ UNLOCK_GOBJECT_EXTRA(extra);
}