https://issues.apache.org/ooo/show_bug.cgi?id=123107

            Bug ID: 123107
        Issue Type: DEFECT
           Summary: remove implicit rtl::O*StringBuffer conversions to
                    char/utf-16 pointers
           Product: General
           Version: 4.0.0
          Hardware: All
                OS: All
            Status: CONFIRMED
          Severity: normal
          Priority: P3
         Component: code
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected]
        Depends on: 123068

The implicit O*StringBuffer conversions to char/utf-16 pointers does not only
facilitate the four bug families seen with the similar OString conversions in
bug 123068 where the problems are more described in more detail:
- unintended pointer arithmetic instead of appending a value-string to a string
- failed tests for the emptiness of a string
- unintended template specializations
- string buffer lifetime mismanagement
but it also introduces a new bug family
- failing string comparisons
because the O*StringBuffer classes don't have the == and != comparison
operators of their O*String counterparts. If string buffers are compared with
== or != then the compiler does implicit conversions to their buffer pointer
and compares these pointers, which is not the content-comparison that seems to
be expected.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.
You are watching all bug changes.

Reply via email to