Issue 88411 - The import and patch of ICU 3.6 causes incompatibilities with ICU already installed - approved
Summary: The import and patch of ICU 3.6 causes incompatibilities with ICU already ins...
Status: CLOSED FIXED
Alias: None
Product: Internationalization
Classification: Code
Component: i18npool (show other issues)
Version: OOo 2.4.0
Hardware: All All
: P3 Trivial (vote)
Target Milestone: ---
Assignee: ooo
QA Contact: issues@l10n
URL:
Keywords: regression
Depends on:
Blocks: 88258
  Show dependency tree
 
Reported: 2008-04-17 22:05 UTC by cokane
Modified: 2013-08-07 15:01 UTC (History)
2 users (show)

See Also:
Issue Type: PATCH
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
Patch to remove "public setBreakType" check from configure (2.15 KB, patch)
2008-04-17 22:06 UTC, cokane
no flags Details | Diff
Patch to create a local, custom derived RBBI class that allows the local code access to setBreakType, without breaking ICU's released API (3.34 KB, patch)
2008-04-17 22:07 UTC, cokane
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this issue.
Description cokane 2008-04-17 22:05:30 UTC
The method that the shipped version of ICU is compiled and linked into the
application causes some build-time failures. This was originally introduced as
the fix to Issue #81519.

I suggest reverting the fix from Issue #81519 and instead applying a patch to
i18npool/source/breakiterator/breakiterator_unicode.cxx that creates a local
RuleBasedBreakIterator-derived class with a public function for accessing the
protected setBreakType(type) method, called publicSetBreakType(type).

I'm posting a patch to that C++ file, as well as the configure script to
illustrate my point.
Comment 1 cokane 2008-04-17 22:06:34 UTC
Created attachment 52982 [details]
Patch to remove "public setBreakType" check from configure
Comment 2 cokane 2008-04-17 22:07:33 UTC
Created attachment 52983 [details]
Patch to create a local, custom derived RBBI class that allows the local code access to setBreakType, without breaking ICU's released API
Comment 3 cokane 2008-04-17 22:10:31 UTC
I've been told that this fix is on ICU's 4.0 milestone list, so the necessity
for having to call setBreakType will only be temporary. At that time, we can
remove all of this code and have a much cleaner implementation.
Comment 4 ooo 2008-04-18 12:20:47 UTC
That indeed looks like a better approach.

Thank you for your contribution.
Please note that to integrate code or data contributed we need a signed
Contributor Agreement form (SCA) filled-out, see
http://contributing.openoffice.org/programming.html#sca
To be able to lookup your name in the list of approved assignments I'd
appreciate if you stated your full name here in this issue.

Thanks
  Eike
Comment 5 cokane 2008-04-18 13:18:44 UTC
Sure, the full name is: Coleman Kane

I'll fill out your form and submit it.
Comment 6 cokane 2008-04-22 02:42:58 UTC
I've submitted the signed form via email.
Comment 7 ooo 2008-04-29 16:54:34 UTC
@khong: Karl, could you please create a CWS for this, based on OOH680_m13, apply
the patches and remove the setBreakType patch from ICU, and all ASAP, please?
Thanks
  Eike
Comment 8 karl.hong 2008-04-30 06:26:46 UTC
Fixed. Reday for QA.
Comment 9 karl.hong 2008-04-30 06:27:47 UTC
.
Comment 10 cokane 2008-05-01 18:19:54 UTC
A lengthy discussion of this bug is going on in FreeBSD PR ports/121787:

http://www.freebsd.org/cgi/query-pr.cgi?pr=121787
Comment 11 stefan.baltzer 2008-05-05 11:18:06 UTC
SBA->ER: As discussed, please verify. Thx.
Comment 12 ooo 2008-05-05 13:07:16 UTC
Verified presence of patch in CWS i18n43.
Comment 13 uwe.luebbers 2008-05-09 16:35:27 UTC
added "approved" to the title, because it will be easier to work with the 2.4.1 meta issue 
during release status meetings.
Comment 14 ooo 2008-05-30 17:15:15 UTC
Present in both masters, OOH680 and DEV300, closing.