Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
7a7a2c54
Kaydet (Commit)
7a7a2c54
authored
Eyl 05, 2012
tarafından
Stephan Bergmann
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
Cosmetics
Change-Id: I7b217c4fb48bbee4a2872d15cf23a955b464ffca
üst
a60f9112
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
50 additions
and
75 deletions
+50
-75
bridge.cxx
binaryurp/source/bridge.cxx
+9
-18
bridgefactory.cxx
binaryurp/source/bridgefactory.cxx
+5
-8
incomingrequest.cxx
binaryurp/source/incomingrequest.cxx
+4
-6
marshal.cxx
binaryurp/source/marshal.cxx
+1
-1
proxy.cxx
binaryurp/source/proxy.cxx
+2
-2
reader.cxx
binaryurp/source/reader.cxx
+19
-24
unmarshal.cxx
binaryurp/source/unmarshal.cxx
+8
-12
writer.cxx
binaryurp/source/writer.cxx
+2
-4
No files found.
binaryurp/source/bridge.cxx
Dosyayı görüntüle @
7a7a2c54
...
...
@@ -180,12 +180,8 @@ Bridge::Bridge(
factory_
(
factory
),
name_
(
name
),
connection_
(
connection
),
provider_
(
provider
),
binaryUno_
(
UNO_LB_UNO
),
cppToBinaryMapping_
(
CPPU_CURRENT_LANGUAGE_BINDING_NAME
,
UNO_LB_UNO
),
binaryToCppMapping_
(
UNO_LB_UNO
,
CPPU_CURRENT_LANGUAGE_BINDING_NAME
),
cppToBinaryMapping_
(
CPPU_CURRENT_LANGUAGE_BINDING_NAME
,
UNO_LB_UNO
),
binaryToCppMapping_
(
UNO_LB_UNO
,
CPPU_CURRENT_LANGUAGE_BINDING_NAME
),
protPropTid_
(
reinterpret_cast
<
sal_Int8
const
*
>
(
".UrpProtocolPropertiesTid"
),
RTL_CONSTASCII_LENGTH
(
".UrpProtocolPropertiesTid"
)),
...
...
@@ -193,10 +189,8 @@ Bridge::Bridge(
protPropType_
(
cppu
::
UnoType
<
css
::
uno
::
Reference
<
css
::
bridge
::
XProtocolProperties
>
>::
get
()),
protPropRequest_
(
"com.sun.star.bridge.XProtocolProperties::requestChange"
),
protPropCommit_
(
"com.sun.star.bridge.XProtocolProperties::commitChange"
),
protPropRequest_
(
"com.sun.star.bridge.XProtocolProperties::requestChange"
),
protPropCommit_
(
"com.sun.star.bridge.XProtocolProperties::commitChange"
),
state_
(
STATE_INITIAL
),
threadPool_
(
0
),
currentContextMode_
(
false
),
proxies_
(
0
),
calls_
(
0
),
normalCall_
(
false
),
activeCalls_
(
0
),
mode_
(
MODE_REQUESTED
)
...
...
@@ -696,8 +690,7 @@ void Bridge::handleRequestChangeReply(
}
if
(
n
!=
exp
)
{
throw
css
::
uno
::
RuntimeException
(
"URP: requestChange reply with unexpected return value"
" received"
,
"URP: requestChange reply with unexpected return value received"
,
static_cast
<
cppu
::
OWeakObject
*
>
(
this
));
}
decrementCalls
();
...
...
@@ -797,8 +790,7 @@ void Bridge::handleCommitChangeRequest(
assert
(
ok
);
(
void
)
ok
;
// avoid warnings
for
(
sal_Int32
i
=
0
;
i
!=
s
.
getLength
();
++
i
)
{
if
(
s
[
i
].
Name
==
"CurrentContext"
)
{
if
(
s
[
i
].
Name
==
"CurrentContext"
)
{
ccMode
=
true
;
}
else
{
ccMode
=
false
;
...
...
@@ -883,8 +875,8 @@ css::uno::Reference< css::uno::XInterface > Bridge::getInstance(
for
(
sal_Int32
i
=
0
;
i
!=
sInstanceName
.
getLength
();
++
i
)
{
if
(
sInstanceName
[
i
]
>
0x7F
)
{
throw
css
::
io
::
IOException
(
"XBridge::getInstance sInstanceName contains non-ASCII"
" character"
,
(
"XBridge::getInstance sInstanceName contains non-ASCII"
" character"
)
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
}
...
...
@@ -997,8 +989,7 @@ void Bridge::makeReleaseCall(
AttachThread
att
(
getThreadPool
());
sendRequest
(
att
.
getTid
(),
oid
,
type
,
css
::
uno
::
TypeDescription
(
"com.sun.star.uno.XInterface::release"
),
css
::
uno
::
TypeDescription
(
"com.sun.star.uno.XInterface::release"
),
std
::
vector
<
BinaryAny
>
());
}
...
...
binaryurp/source/bridgefactory.cxx
Dosyayı görüntüle @
7a7a2c54
...
...
@@ -52,14 +52,12 @@ css::uno::Reference< css::uno::XInterface > BridgeFactory::static_create(
}
OUString
BridgeFactory
::
static_getImplementationName
()
{
return
OUString
(
"com.sun.star.comp.bridge.BridgeFactory"
);
return
OUString
(
"com.sun.star.comp.bridge.BridgeFactory"
);
}
css
::
uno
::
Sequence
<
OUString
>
BridgeFactory
::
static_getSupportedServiceNames
()
{
OUString
name
(
"com.sun.star.bridge.BridgeFactory"
);
OUString
name
(
"com.sun.star.bridge.BridgeFactory"
);
return
css
::
uno
::
Sequence
<
OUString
>
(
&
name
,
1
);
}
...
...
@@ -132,11 +130,10 @@ css::uno::Reference< css::bridge::XBridge > BridgeFactory::createBridge(
throw
css
::
bridge
::
BridgeExistsException
(
sName
,
static_cast
<
cppu
::
OWeakObject
*
>
(
this
));
}
if
(
sProtocol
!=
"urp"
||
!
aConnection
.
is
()
)
{
if
(
sProtocol
!=
"urp"
||
!
aConnection
.
is
())
{
throw
css
::
lang
::
IllegalArgumentException
(
"BridgeFactory::createBridge: sProtocol != urp ||"
" aConnection == null"
,
(
"BridgeFactory::createBridge: sProtocol != urp ||"
" aConnection == null"
)
,
static_cast
<
cppu
::
OWeakObject
*
>
(
this
),
-
1
);
}
b
.
set
(
new
Bridge
(
this
,
sName
,
aConnection
,
anInstanceProvider
));
...
...
binaryurp/source/incomingrequest.cxx
Dosyayı görüntüle @
7a7a2c54
...
...
@@ -81,8 +81,8 @@ void IncomingRequest::execute() const {
}
catch
(
const
std
::
exception
&
e
)
{
throw
css
::
uno
::
RuntimeException
(
(
"caught C++ exception: "
+
rtl
::
OStringToOUString
(
rtl
::
OString
(
e
.
what
()),
RTL_TEXTENCODING_ASCII_US
)),
OStringToOUString
(
OString
(
e
.
what
()),
RTL_TEXTENCODING_ASCII_US
)),
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
// best-effort string conversion
}
...
...
@@ -156,10 +156,8 @@ bool IncomingRequest::execute_throw(
OSL_TRACE
(
(
OSL_LOG_PREFIX
"initial element '%s':"
" NoSuchElementException '%s'"
),
(
OUStringToOString
(
oid_
,
RTL_TEXTENCODING_UTF8
).
getStr
()),
(
OUStringToOString
(
e
.
Message
,
RTL_TEXTENCODING_UTF8
).
OUStringToOString
(
oid_
,
RTL_TEXTENCODING_UTF8
).
getStr
(),
(
OUStringToOString
(
e
.
Message
,
RTL_TEXTENCODING_UTF8
).
getStr
()));
}
}
...
...
binaryurp/source/marshal.cxx
Dosyayı görüntüle @
7a7a2c54
...
...
@@ -76,7 +76,7 @@ void writeString(
std
::
vector
<
unsigned
char
>
*
buffer
,
OUString
const
&
value
)
{
assert
(
buffer
!=
0
);
rtl
::
OString
v
;
OString
v
;
if
(
!
value
.
convertToString
(
&
v
,
RTL_TEXTENCODING_UTF8
,
(
RTL_UNICODETOTEXT_FLAGS_UNDEFINED_ERROR
|
...
...
binaryurp/source/proxy.cxx
Dosyayı görüntüle @
7a7a2c54
...
...
@@ -110,8 +110,8 @@ void Proxy::do_dispatch(
}
catch
(
const
std
::
exception
&
e
)
{
throw
css
::
uno
::
RuntimeException
(
(
"caught C++ exception: "
+
rtl
::
OStringToOUString
(
rtl
::
OString
(
e
.
what
()),
RTL_TEXTENCODING_ASCII_US
)),
OStringToOUString
(
OString
(
e
.
what
()),
RTL_TEXTENCODING_ASCII_US
)),
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
// best-effort string conversion
}
...
...
binaryurp/source/reader.cxx
Dosyayı görüntüle @
7a7a2c54
...
...
@@ -24,6 +24,7 @@
#include <memory>
#include <vector>
#include "boost/scoped_ptr.hpp"
#include "com/sun/star/connection/XConnection.hpp"
#include "com/sun/star/io/IOException.hpp"
#include "com/sun/star/uno/Any.hxx"
...
...
@@ -54,8 +55,6 @@
#include "specialfunctionids.hxx"
#include "unmarshal.hxx"
#include <boost/scoped_ptr.hpp>
namespace
binaryurp
{
namespace
{
...
...
@@ -119,8 +118,7 @@ void Reader::execute() {
header
.
done
();
if
(
count
==
0
)
{
throw
css
::
io
::
IOException
(
"binaryurp::Reader: block with zero message count"
" received"
,
"binaryurp::Reader: block with zero message count received"
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
Unmarshal
block
(
bridge_
,
state_
,
read
(
con
,
size
,
false
));
...
...
@@ -158,8 +156,8 @@ void Reader::readMessage(Unmarshal & unmarshal) {
if
(((
flags2
&
0x40
)
!=
0
)
!=
forceSynchronous
)
{
// bit 6: SYNCHRONOUS
throw
css
::
uno
::
RuntimeException
(
"URP: request message with MUSTREPLY != SYNCHRONOUS"
" received"
,
(
"URP: request message with MUSTREPLY != SYNCHRONOUS"
" received"
)
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
}
else
{
...
...
@@ -182,8 +180,8 @@ void Reader::readMessage(Unmarshal & unmarshal) {
}
else
{
if
(
!
lastType_
.
is
())
{
throw
css
::
uno
::
RuntimeException
(
"URP: request message with NEWTYPE received when last"
" interface type has not yet been set"
,
(
"URP: request message with NEWTYPE received when last"
" interface type has not yet been set"
)
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
type
=
lastType_
;
...
...
@@ -200,8 +198,8 @@ void Reader::readMessage(Unmarshal & unmarshal) {
}
else
{
if
(
lastOid_
.
isEmpty
())
{
throw
css
::
uno
::
RuntimeException
(
"URP: request message with NEWOID received when last
"
" OID has not yet been set"
,
(
"URP: request message with NEWOID received when last OID has
"
" not yet been set"
)
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
oid
=
lastOid_
;
...
...
@@ -211,8 +209,7 @@ void Reader::readMessage(Unmarshal & unmarshal) {
type
.
makeComplete
();
if
(
type
.
get
()
->
eTypeClass
!=
typelib_TypeClass_INTERFACE
)
{
throw
css
::
uno
::
RuntimeException
(
"URP: request message with non-interface interface type"
" received"
,
"URP: request message with non-interface interface type received"
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
typelib_InterfaceTypeDescription
*
itd
=
...
...
@@ -248,8 +245,8 @@ void Reader::readMessage(Unmarshal & unmarshal) {
}
else
{
if
(
forceSynchronous
)
{
throw
css
::
uno
::
RuntimeException
(
"URP: synchronous request message with non-oneway
"
" function ID received"
,
(
"URP: synchronous request message with non-oneway function ID
"
" received"
)
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
synchronous
=
true
;
...
...
@@ -302,8 +299,8 @@ void Reader::readMessage(Unmarshal & unmarshal) {
break
;
default
:
throw
css
::
uno
::
RuntimeException
(
"URP: request message with UrpProtocolProperties OID
"
" and unknown function ID received"
,
(
"URP: request message with UrpProtocolProperties OID and
"
" unknown function ID received"
)
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
}
else
{
...
...
@@ -333,16 +330,15 @@ void Reader::readMessage(Unmarshal & unmarshal) {
css
::
uno
::
XInterface
>
>::
get
())))))
{
throw
css
::
uno
::
RuntimeException
(
"URP: queryInterface request message with
"
" unknown OID received"
,
(
"URP: queryInterface request message with unknown OID
"
" received"
)
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
}
break
;
case
SPECIAL_FUNCTION_ID_RESERVED
:
throw
css
::
uno
::
RuntimeException
(
"URP: request message with unknown function ID 1"
" received"
,
"URP: request message with unknown function ID 1 received"
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
case
SPECIAL_FUNCTION_ID_RELEASE
:
break
;
...
...
@@ -429,8 +425,7 @@ void Reader::readReplyMessage(Unmarshal & unmarshal, sal_uInt8 flags1) {
}
if
(
!
ok
)
{
throw
css
::
uno
::
RuntimeException
(
"URP: reply message with bad exception type"
" received"
,
"URP: reply message with bad exception type received"
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
}
...
...
@@ -502,8 +497,8 @@ rtl::ByteSequence Reader::getTid(Unmarshal & unmarshal, bool newTid) const {
}
if
(
lastTid_
.
getLength
()
==
0
)
{
throw
css
::
uno
::
RuntimeException
(
"URP: message with NEWTID received when last TID has not
"
" yet been set"
,
(
"URP: message with NEWTID received when last TID has not yet been
"
" set"
)
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
return
lastTid_
;
...
...
binaryurp/source/unmarshal.cxx
Dosyayı görüntüle @
7a7a2c54
...
...
@@ -146,8 +146,7 @@ css::uno::TypeDescription Unmarshal::readType() {
case
typelib_TypeClass_ANY
:
if
((
flags
&
0x80
)
!=
0
)
{
throw
css
::
io
::
IOException
(
"binaryurp::Unmarshal: cache flag of simple type is"
" set"
,
"binaryurp::Unmarshal: cache flag of simple type is set"
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
return
css
::
uno
::
TypeDescription
(
...
...
@@ -163,8 +162,7 @@ css::uno::TypeDescription Unmarshal::readType() {
if
((
flags
&
0x80
)
==
0
)
{
if
(
idx
==
cache
::
ignore
||
!
state_
.
typeCache
[
idx
].
is
())
{
throw
css
::
io
::
IOException
(
"binaryurp::Unmarshal: unknown type cache"
" index"
,
"binaryurp::Unmarshal: unknown type cache index"
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
return
state_
.
typeCache
[
idx
];
...
...
@@ -176,8 +174,7 @@ css::uno::TypeDescription Unmarshal::readType() {
{
throw
css
::
io
::
IOException
(
"binaryurp::Unmarshal: type with unknown"
" name: "
+
str
,
"binaryurp::Unmarshal: type with unknown name: "
+
str
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
for
(
css
::
uno
::
TypeDescription
t2
(
t
);
...
...
@@ -189,16 +186,16 @@ css::uno::TypeDescription Unmarshal::readType() {
t2
.
get
())
->
pType
);
if
(
!
t2
.
is
())
{
throw
css
::
io
::
IOException
(
"binaryurp::Unmarshal: sequence type with
"
" unknown component type"
,
(
"binaryurp::Unmarshal: sequence type with unknown
"
" component type"
)
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
switch
(
t2
.
get
()
->
eTypeClass
)
{
case
typelib_TypeClass_VOID
:
case
typelib_TypeClass_EXCEPTION
:
throw
css
::
io
::
IOException
(
"binaryurp::Unmarshal: sequence type with
"
" bad component type"
,
(
"binaryurp::Unmarshal: sequence type with bad
"
" component type"
)
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
default
:
break
;
...
...
@@ -222,8 +219,7 @@ OUString Unmarshal::readOid() {
for
(
sal_Int32
i
=
0
;
i
!=
oid
.
getLength
();
++
i
)
{
if
(
oid
[
i
]
>
0x7F
)
{
throw
css
::
io
::
IOException
(
"binaryurp::Unmarshal: OID contains non-ASCII"
" character"
,
"binaryurp::Unmarshal: OID contains non-ASCII character"
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
());
}
}
...
...
binaryurp/source/writer.cxx
Dosyayı görüntüle @
7a7a2c54
...
...
@@ -163,8 +163,7 @@ void Writer::execute() {
(
item
.
oid
!=
"UrpProtocolProperties"
&&
!
item
.
member
.
equals
(
css
::
uno
::
TypeDescription
(
"com.sun.star.uno.XInterface::"
"release"
))
&&
"com.sun.star.uno.XInterface::release"
))
&&
bridge_
->
isCurrentContextMode
()),
item
.
currentContext
);
}
else
{
...
...
@@ -431,8 +430,7 @@ void Writer::sendMessage(std::vector< unsigned char > const & buffer) {
}
catch
(
const
css
::
io
::
IOException
&
e
)
{
css
::
uno
::
Any
exc
(
cppu
::
getCaughtException
());
throw
css
::
lang
::
WrappedTargetRuntimeException
(
(
"Binary URP write raised IO exception: "
+
e
.
Message
),
"Binary URP write raised IO exception: "
+
e
.
Message
,
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
(),
exc
);
}
n
=
static_cast
<
std
::
vector
<
unsigned
char
>::
size_type
>
(
n
-
k
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment