- Add yet another patch to ensure compatibility with Python 2.0 and later.

- Bump PORTREVISION.

Submitted by:	The inimitable Brad Champan <chapmanb@arches.uga.edu>
This commit is contained in:
Johann Visagie 2001-10-09 10:52:12 +00:00
parent 3d461ccf39
commit af55a37046
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=48595
3 changed files with 34 additions and 2 deletions

View file

@ -7,7 +7,7 @@
PORTNAME= fnorb
PORTVERSION= 1.1
PORTREVISION= 7
PORTREVISION= 8
CATEGORIES= devel python
MASTER_SITES= http://www.fnorb.org/download/ \
ftp://ftp.dstc.edu.au/DSTC/fnorb/

View file

@ -1,4 +1,4 @@
Allow the port to work with Python 2.0. This should be fixed in the next
Allow the port to work with Python 2.0+. This should be fixed in the next
release of Fnorb. (Caveat: There may be more broken calls.)
Thanks to Mike Meyer <mwm@mired.org>, Brad Chapman <chapmanb@arches.uga.edu>.

View file

@ -0,0 +1,32 @@
Yet another patch to ensure compatibility with Python 2.0+.
Thanks to Brad Chapman <chapmanb@arches.uga.edu> and
David Konerding <dek@cgl.ucsf.edu>.
-- Johann <wjv@FreeBSD.org>
--- orb/TypeCode.py.orig Mon Apr 3 16:08:35 2000
+++ orb/TypeCode.py Tue Oct 9 12:38:52 2001
@@ -1240,13 +1240,17 @@
def _fnorb_marshal_value(self, cursor, value):
""" Marshal a VALUE of this type onto an octet stream. """
- if (not isinstance(value, CORBA.Object) and
- not isinstance(value, CORBA.Object_skel)):
- raise CORBA.BAD_PARAM()
-
+ ## Bugfix: check if value is None *before* checking its
+ ## instance type (otherwise, trying to return a None
+ ## in place of an InterfaceObject would fail with BAD_PARAM
+
# Python 'None' is used to represent CORBA 'nil'
if value is None:
value = CORBA.Object(IOP.IOR())
+
+ if (not isinstance(value, CORBA.Object) and
+ not isinstance(value, CORBA.Object_skel)):
+ raise CORBA.BAD_PARAM()
value._fnorb_marshal(cursor)