[vala] codegen: Do not use deprecated functions for lock statements
- From: JÃrg Billeter <juergbi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [vala] codegen: Do not use deprecated functions for lock statements
- Date: Sun, 16 Sep 2012 18:47:21 +0000 (UTC)
commit dfb95c8093363a057e52da24929e11b2b72b17f0
Author: JÃrg Billeter <j bitron ch>
Date: Sun Sep 16 20:45:15 2012 +0200
codegen: Do not use deprecated functions for lock statements
Fixes bug 662810.
codegen/valaccodebasemodule.vala | 14 ++++++++++++--
1 files changed, 12 insertions(+), 2 deletions(-)
---
diff --git a/codegen/valaccodebasemodule.vala b/codegen/valaccodebasemodule.vala
index a81afec..8b2a359 100644
--- a/codegen/valaccodebasemodule.vala
+++ b/codegen/valaccodebasemodule.vala
@@ -462,13 +462,16 @@ public abstract class Vala.CCodeBaseModule : CodeGenerator {
gvalue_type = (Struct) glib_ns.scope.lookup ("Value");
gvariant_type = (Class) glib_ns.scope.lookup ("Variant");
gsource_type = (Class) glib_ns.scope.lookup ("Source");
- mutex_type = (Struct) glib_ns.scope.lookup ("StaticRecMutex");
if (context.require_glib_version (2, 32)) {
gmutex_type = (Struct) glib_ns.scope.lookup ("Mutex");
grecmutex_type = (Struct) glib_ns.scope.lookup ("RecMutex");
grwlock_type = (Struct) glib_ns.scope.lookup ("RWLock");
gcond_type = (Struct) glib_ns.scope.lookup ("Cond");
+
+ mutex_type = grecmutex_type;
+ } else {
+ mutex_type = (Struct) glib_ns.scope.lookup ("StaticRecMutex");
}
type_module_type = (TypeSymbol) glib_ns.scope.lookup ("TypeModule");
@@ -871,8 +874,15 @@ public abstract class Vala.CCodeBaseModule : CodeGenerator {
pop_context ();
if (finalize_context != null) {
+ string mutex_clear;
+ if (context.require_glib_version (2, 32)) {
+ mutex_clear = "g_rec_mutex_clear";
+ } else {
+ mutex_clear = "g_static_rec_mutex_free";
+ }
+
push_context (finalize_context);
- var fc = new CCodeFunctionCall (new CCodeIdentifier ("g_static_rec_mutex_free"));
+ var fc = new CCodeFunctionCall (new CCodeIdentifier (mutex_clear));
fc.add_argument (new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, l));
ccode.add_expression (fc);
pop_context ();
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]