1.44.0 breaks API/ABI without transitioning

Bug #1511253 reported by Rico Tzschichholz on 2015-10-29
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
gjs (Ubuntu)
Undecided
Unassigned
Xenial
Undecided
Unassigned

Bug Description

gjs breaks API/ABI from 1.43.3 to 1.44.0

diff --git a/gi/interface.h b/gi/interface.h
index cdb41ab..70e71a7 100644
--- a/gi/interface.h
+++ b/gi/interface.h
@@ -33,7 +33,9 @@ G_BEGIN_DECLS

 JSBool gjs_define_interface_class (JSContext *context,
                                    JSObject *in_object,
- GIInterfaceInfo *info);
+ GIInterfaceInfo *info,
+ GType gtype,
+ JSObject **constructor_p);

 JSBool gjs_lookup_interface_constructor (JSContext *context,
                                          GType gtype,
diff --git a/gjs/compat.h b/gjs/compat.h
index b5b617f..236ce60 100644
--- a/gjs/compat.h
+++ b/gjs/compat.h
@@ -77,8 +77,8 @@ gjs_##name##_constructor(JSContext *context, \
  * be at the very top.
  */
 #define GJS_NATIVE_CONSTRUCTOR_VARIABLES(name) \
- JSObject *object = NULL; \
- jsval *argv G_GNUC_UNUSED = JS_ARGV(context, vp);
+ JSObject *object = NULL; \
+ JS::CallArgs argv G_GNUC_UNUSED = JS::CallArgsFromVp(argc, vp);

 /**
  * GJS_NATIVE_CONSTRUCTOR_PRELUDE:
@@ -101,7 +101,7 @@ gjs_##name##_constructor(JSContext *context, \
  * successfully.
  */
 #define GJS_NATIVE_CONSTRUCTOR_FINISH(name) \
- JS_SET_RVAL(context, vp, OBJECT_TO_JSVAL(object));
+ argv.rval().set(OBJECT_TO_JSVAL(object));

 /**
  * GJS_NATIVE_CONSTRUCTOR_DEFINE_ABSTRACT:

Tim (darkxst) wrote :

Unblocking, Debian didnt seem interested in bumping soname, and its not a function that is likely to be used externally.

tags: removed: block-proposed
Jeremy Bicha (jbicha) wrote :

There's nothing we can really do about this now, so I'm closing this bug.

Changed in gjs (Ubuntu):
status: New → Won't Fix
Changed in gjs (Ubuntu Xenial):
status: New → Won't Fix
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers