Merge lp:~eday/gearmand/fix-struct-alignment into lp:gearmand/1.0

Proposed by Eric Day on 2010-03-09
Status: Merged
Merged at revision: not available
Proposed branch: lp:~eday/gearmand/fix-struct-alignment
Merge into: lp:gearmand/1.0
Diff against target: 93 lines (+25/-4)
4 files modified
libgearman/configure.h.in (+3/-1)
libgearman/connection.c (+1/-1)
m4/pandora_platform.m4 (+5/-0)
tests/client_test.c (+16/-2)
To merge this branch: bzr merge lp:~eday/gearmand/fix-struct-alignment
Reviewer Review Type Date Requested Status
Gearman-developers 2010-03-09 Pending
Review via email: mp+21012@code.launchpad.net
To post a comment you must log in.
Brian Aker (brianaker) wrote :

The other option to this is just to turn down the optimization on
Solaris (since that is where the bug is).

On Mar 9, 2010, at 3:07 PM, Eric Day wrote:

> Eric Day has proposed merging lp:~eday/gearmand/fix-struct-alignment
> into lp:gearmand.
>
> Requested reviews:
> Gearman-developers (gearman-developers)
>
> --
> https://code.launchpad.net/~eday/gearmand/fix-struct-alignment/+merge/21012
> Your team Gearman-developers is subscribed to branch lp:gearmand.
> === modified file 'libgearman/configure.h.in'
> --- libgearman/configure.h.in 2010-02-12 20:26:31 +0000
> +++ libgearman/configure.h.in 2010-03-09 23:07:17 +0000
> @@ -16,7 +16,9 @@
> extern "C" {
> #endif
>
> -#ifdef TARGET_OS_LINUX
> +#define LIBGEARMAN_OPTIMIZE_BITFIELD @PANDORA_OPTIMIZE_BITFIELD@
> +
> +#if LIBGEARMAN_OPTIMIZE_BITFIELD == 1
> #define LIBGEARMAN_BITFIELD :1
> #else
> #define LIBGEARMAN_BITFIELD
>
> === modified file 'libgearman/connection.c'
> --- libgearman/connection.c 2010-01-28 23:46:52 +0000
> +++ libgearman/connection.c 2010-03-09 23:07:17 +0000
> @@ -115,7 +115,7 @@
> {
> connection= gearman_connection_create(gearman, connection, NULL);
>
> - if (from || connection == NULL)
> + if (from == NULL || connection == NULL)
> return connection;
>
> connection->options.ready= from->options.ready;
>
> === modified file 'm4/pandora_platform.m4'
> --- m4/pandora_platform.m4 2010-01-02 05:06:13 +0000
> +++ m4/pandora_platform.m4 2010-03-09 23:07:17 +0000
> @@ -34,11 +34,14 @@
> ;;
> esac
>
> + PANDORA_OPTIMIZE_BITFIELD=0
> +
> case "$target_os" in
> *linux*)
> TARGET_LINUX="true"
> AC_SUBST(TARGET_LINUX)
> AC_DEFINE([TARGET_OS_LINUX], [1], [Whether we build for Linux])
> + PANDORA_OPTIMIZE_BITFIELD=1
> ;;
> *darwin*)
> TARGET_OSX="true"
> @@ -60,6 +63,8 @@
> ;;
> esac
>
> + AC_SUBST(PANDORA_OPTIMIZE_BITFIELD)
> +
> AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
> AC_CHECK_DECL([__ICC], [INTELCC="yes"], [INTELCC="no"])
>
>
> === modified file 'tests/client_test.c'
> --- tests/client_test.c 2010-01-28 21:45:14 +0000
> +++ tests/client_test.c 2010-03-09 23:07:17 +0000
> @@ -99,6 +99,7 @@
> test_return_t clone_test(void *object)
> {
> const gearman_client_st *from= (gearman_client_st *)object;
> + gearman_client_st *from_with_host;
> gearman_client_st *client;
>
> client= gearman_client_clone(NULL, NULL);
> @@ -110,8 +111,21 @@
>
> client= gearman_client_clone(NULL, from);
> test_truth(client);
> -
> - gearman_client_free(client);
> + gearman_client_free(client);
> +
> + from_with_host= gearman_client_create(NULL);
> + test_truth(from_with_host);
> + gearman_client_add_server(from_with_host, "127.0.0.1", 12345);
> +
> + client= gearman_client_clone(NULL, from_with_host);
> + test_truth(client);
> +
> + test_truth(client->universal.con_list);
> + test_truth(!strcmp(client->universal.con_list->host,
> from_with_host->universal.con_list->host));
> + test_truth(client->universal.con_list->port == from_with_host-
> >universal.con_list->port);
> +
> + gearman_client_free(client);
> + gearman_client_free(from_with_host);
>
> return TEST_SUCCESS;
> }
>

Eric Day (eday) wrote :
Download full text (3.8 KiB)

I don't really have a preference how this is fixed, this just seemed
like a generic way we can control from pandora-build if we want to
fine-tune it. We just can't have any public headers depending on
config.h like they do now.

-Eric

On Tue, Mar 09, 2010 at 11:09:21PM -0000, Brian Aker wrote:
> The other option to this is just to turn down the optimization on
> Solaris (since that is where the bug is).
>
>
> On Mar 9, 2010, at 3:07 PM, Eric Day wrote:
>
> > Eric Day has proposed merging lp:~eday/gearmand/fix-struct-alignment
> > into lp:gearmand.
> >
> > Requested reviews:
> > Gearman-developers (gearman-developers)
> >
> > --
> > https://code.launchpad.net/~eday/gearmand/fix-struct-alignment/+merge/21012
> > Your team Gearman-developers is subscribed to branch lp:gearmand.
> > === modified file 'libgearman/configure.h.in'
> > --- libgearman/configure.h.in 2010-02-12 20:26:31 +0000
> > +++ libgearman/configure.h.in 2010-03-09 23:07:17 +0000
> > @@ -16,7 +16,9 @@
> > extern "C" {
> > #endif
> >
> > -#ifdef TARGET_OS_LINUX
> > +#define LIBGEARMAN_OPTIMIZE_BITFIELD @PANDORA_OPTIMIZE_BITFIELD@
> > +
> > +#if LIBGEARMAN_OPTIMIZE_BITFIELD == 1
> > #define LIBGEARMAN_BITFIELD :1
> > #else
> > #define LIBGEARMAN_BITFIELD
> >
> > === modified file 'libgearman/connection.c'
> > --- libgearman/connection.c 2010-01-28 23:46:52 +0000
> > +++ libgearman/connection.c 2010-03-09 23:07:17 +0000
> > @@ -115,7 +115,7 @@
> > {
> > connection= gearman_connection_create(gearman, connection, NULL);
> >
> > - if (from || connection == NULL)
> > + if (from == NULL || connection == NULL)
> > return connection;
> >
> > connection->options.ready= from->options.ready;
> >
> > === modified file 'm4/pandora_platform.m4'
> > --- m4/pandora_platform.m4 2010-01-02 05:06:13 +0000
> > +++ m4/pandora_platform.m4 2010-03-09 23:07:17 +0000
> > @@ -34,11 +34,14 @@
> > ;;
> > esac
> >
> > + PANDORA_OPTIMIZE_BITFIELD=0
> > +
> > case "$target_os" in
> > *linux*)
> > TARGET_LINUX="true"
> > AC_SUBST(TARGET_LINUX)
> > AC_DEFINE([TARGET_OS_LINUX], [1], [Whether we build for Linux])
> > + PANDORA_OPTIMIZE_BITFIELD=1
> > ;;
> > *darwin*)
> > TARGET_OSX="true"
> > @@ -60,6 +63,8 @@
> > ;;
> > esac
> >
> > + AC_SUBST(PANDORA_OPTIMIZE_BITFIELD)
> > +
> > AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
> > AC_CHECK_DECL([__ICC], [INTELCC="yes"], [INTELCC="no"])
> >
> >
> > === modified file 'tests/client_test.c'
> > --- tests/client_test.c 2010-01-28 21:45:14 +0000
> > +++ tests/client_test.c 2010-03-09 23:07:17 +0000
> > @@ -99,6 +99,7 @@
> > test_return_t clone_test(void *object)
> > {
> > const gearman_client_st *from= (gearman_client_st *)object;
> > + gearman_client_st *from_with_host;
> > gearman_client_st *client;
> >
> > client= gearman_client_clone(NULL, NULL);
> > @@ -110,8 +111,21 @@
> >
> > client= gearman_client_clone(NULL, from);
> > test_truth(client);
> > -
> > - gearman_client_free(client);
> > + gearman_client_free(client);
> > +
> > + from_with_host= gearman_client_create(NULL);
> > + test_truth(from_with_host);
> > + gearman_client_add_server(from_with_host, "127.0.0.1", ...

Read more...

Brian Aker (brianaker) wrote :
Download full text (4.0 KiB)

Ok, just disable optimizations on Solaris and pull the macro.

On Mar 9, 2010, at 3:15 PM, Eric Day wrote:

> I don't really have a preference how this is fixed, this just seemed
> like a generic way we can control from pandora-build if we want to
> fine-tune it. We just can't have any public headers depending on
> config.h like they do now.
>
> -Eric
>
> On Tue, Mar 09, 2010 at 11:09:21PM -0000, Brian Aker wrote:
>> The other option to this is just to turn down the optimization on
>> Solaris (since that is where the bug is).
>>
>>
>> On Mar 9, 2010, at 3:07 PM, Eric Day wrote:
>>
>>> Eric Day has proposed merging lp:~eday/gearmand/fix-struct-alignment
>>> into lp:gearmand.
>>>
>>> Requested reviews:
>>> Gearman-developers (gearman-developers)
>>>
>>> --
>>> https://code.launchpad.net/~eday/gearmand/fix-struct-alignment/+merge/21012
>>> Your team Gearman-developers is subscribed to branch lp:gearmand.
>>> === modified file 'libgearman/configure.h.in'
>>> --- libgearman/configure.h.in 2010-02-12 20:26:31 +0000
>>> +++ libgearman/configure.h.in 2010-03-09 23:07:17 +0000
>>> @@ -16,7 +16,9 @@
>>> extern "C" {
>>> #endif
>>>
>>> -#ifdef TARGET_OS_LINUX
>>> +#define LIBGEARMAN_OPTIMIZE_BITFIELD @PANDORA_OPTIMIZE_BITFIELD@
>>> +
>>> +#if LIBGEARMAN_OPTIMIZE_BITFIELD == 1
>>> #define LIBGEARMAN_BITFIELD :1
>>> #else
>>> #define LIBGEARMAN_BITFIELD
>>>
>>> === modified file 'libgearman/connection.c'
>>> --- libgearman/connection.c 2010-01-28 23:46:52 +0000
>>> +++ libgearman/connection.c 2010-03-09 23:07:17 +0000
>>> @@ -115,7 +115,7 @@
>>> {
>>> connection= gearman_connection_create(gearman, connection, NULL);
>>>
>>> - if (from || connection == NULL)
>>> + if (from == NULL || connection == NULL)
>>> return connection;
>>>
>>> connection->options.ready= from->options.ready;
>>>
>>> === modified file 'm4/pandora_platform.m4'
>>> --- m4/pandora_platform.m4 2010-01-02 05:06:13 +0000
>>> +++ m4/pandora_platform.m4 2010-03-09 23:07:17 +0000
>>> @@ -34,11 +34,14 @@
>>> ;;
>>> esac
>>>
>>> + PANDORA_OPTIMIZE_BITFIELD=0
>>> +
>>> case "$target_os" in
>>> *linux*)
>>> TARGET_LINUX="true"
>>> AC_SUBST(TARGET_LINUX)
>>> AC_DEFINE([TARGET_OS_LINUX], [1], [Whether we build for Linux])
>>> + PANDORA_OPTIMIZE_BITFIELD=1
>>> ;;
>>> *darwin*)
>>> TARGET_OSX="true"
>>> @@ -60,6 +63,8 @@
>>> ;;
>>> esac
>>>
>>> + AC_SUBST(PANDORA_OPTIMIZE_BITFIELD)
>>> +
>>> AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
>>> AC_CHECK_DECL([__ICC], [INTELCC="yes"], [INTELCC="no"])
>>>
>>>
>>> === modified file 'tests/client_test.c'
>>> --- tests/client_test.c 2010-01-28 21:45:14 +0000
>>> +++ tests/client_test.c 2010-03-09 23:07:17 +0000
>>> @@ -99,6 +99,7 @@
>>> test_return_t clone_test(void *object)
>>> {
>>> const gearman_client_st *from= (gearman_client_st *)object;
>>> + gearman_client_st *from_with_host;
>>> gearman_client_st *client;
>>>
>>> client= gearman_client_clone(NULL, NULL);
>>> @@ -110,8 +111,21 @@
>>>
>>> client= gearman_client_clone(NULL, from);
>>> test_truth(client);
>>> -
>>> - gearman_client_free(client);
>>> + gearman_client_free(client);
>>> +
>>> + from_with_host= gearman_client_create(NULL);...

Read more...

Eric Day (eday) wrote :
Download full text (4.7 KiB)

You mean remove all references to LIBGEARMAN_BITFIELD, and don't
optimize for any platform? I don't see any problem with keeping
the optimization in, what specifically about the proposed branch is
an issue?

-Eric

On Tue, Mar 09, 2010 at 11:21:19PM -0000, Brian Aker wrote:
> Ok, just disable optimizations on Solaris and pull the macro.
>
> On Mar 9, 2010, at 3:15 PM, Eric Day wrote:
>
> > I don't really have a preference how this is fixed, this just seemed
> > like a generic way we can control from pandora-build if we want to
> > fine-tune it. We just can't have any public headers depending on
> > config.h like they do now.
> >
> > -Eric
> >
> > On Tue, Mar 09, 2010 at 11:09:21PM -0000, Brian Aker wrote:
> >> The other option to this is just to turn down the optimization on
> >> Solaris (since that is where the bug is).
> >>
> >>
> >> On Mar 9, 2010, at 3:07 PM, Eric Day wrote:
> >>
> >>> Eric Day has proposed merging lp:~eday/gearmand/fix-struct-alignment
> >>> into lp:gearmand.
> >>>
> >>> Requested reviews:
> >>> Gearman-developers (gearman-developers)
> >>>
> >>> --
> >>> https://code.launchpad.net/~eday/gearmand/fix-struct-alignment/+merge/21012
> >>> Your team Gearman-developers is subscribed to branch lp:gearmand.
> >>> === modified file 'libgearman/configure.h.in'
> >>> --- libgearman/configure.h.in 2010-02-12 20:26:31 +0000
> >>> +++ libgearman/configure.h.in 2010-03-09 23:07:17 +0000
> >>> @@ -16,7 +16,9 @@
> >>> extern "C" {
> >>> #endif
> >>>
> >>> -#ifdef TARGET_OS_LINUX
> >>> +#define LIBGEARMAN_OPTIMIZE_BITFIELD @PANDORA_OPTIMIZE_BITFIELD@
> >>> +
> >>> +#if LIBGEARMAN_OPTIMIZE_BITFIELD == 1
> >>> #define LIBGEARMAN_BITFIELD :1
> >>> #else
> >>> #define LIBGEARMAN_BITFIELD
> >>>
> >>> === modified file 'libgearman/connection.c'
> >>> --- libgearman/connection.c 2010-01-28 23:46:52 +0000
> >>> +++ libgearman/connection.c 2010-03-09 23:07:17 +0000
> >>> @@ -115,7 +115,7 @@
> >>> {
> >>> connection= gearman_connection_create(gearman, connection, NULL);
> >>>
> >>> - if (from || connection == NULL)
> >>> + if (from == NULL || connection == NULL)
> >>> return connection;
> >>>
> >>> connection->options.ready= from->options.ready;
> >>>
> >>> === modified file 'm4/pandora_platform.m4'
> >>> --- m4/pandora_platform.m4 2010-01-02 05:06:13 +0000
> >>> +++ m4/pandora_platform.m4 2010-03-09 23:07:17 +0000
> >>> @@ -34,11 +34,14 @@
> >>> ;;
> >>> esac
> >>>
> >>> + PANDORA_OPTIMIZE_BITFIELD=0
> >>> +
> >>> case "$target_os" in
> >>> *linux*)
> >>> TARGET_LINUX="true"
> >>> AC_SUBST(TARGET_LINUX)
> >>> AC_DEFINE([TARGET_OS_LINUX], [1], [Whether we build for Linux])
> >>> + PANDORA_OPTIMIZE_BITFIELD=1
> >>> ;;
> >>> *darwin*)
> >>> TARGET_OSX="true"
> >>> @@ -60,6 +63,8 @@
> >>> ;;
> >>> esac
> >>>
> >>> + AC_SUBST(PANDORA_OPTIMIZE_BITFIELD)
> >>> +
> >>> AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
> >>> AC_CHECK_DECL([__ICC], [INTELCC="yes"], [INTELCC="no"])
> >>>
> >>>
> >>> === modified file 'tests/client_test.c'
> >>> --- tests/client_test.c 2010-01-28 21:45:14 +0000
> >>> +++ tests/client_test.c 2010-03-09 23:07:17 +0000
> >>> @@ -99,6 +99,7 @@
> >>> test_return_t clone_...

Read more...

333. By Eric Day on 2010-03-09

Changed default bitfield optimize setting to only be off for Solaris.

Eric Day (eday) wrote :
Download full text (4.5 KiB)

Ok, branch updated with default from only Linux to not Solaris.

On Tue, Mar 09, 2010 at 11:21:19PM -0000, Brian Aker wrote:
> Ok, just disable optimizations on Solaris and pull the macro.
>
> On Mar 9, 2010, at 3:15 PM, Eric Day wrote:
>
> > I don't really have a preference how this is fixed, this just seemed
> > like a generic way we can control from pandora-build if we want to
> > fine-tune it. We just can't have any public headers depending on
> > config.h like they do now.
> >
> > -Eric
> >
> > On Tue, Mar 09, 2010 at 11:09:21PM -0000, Brian Aker wrote:
> >> The other option to this is just to turn down the optimization on
> >> Solaris (since that is where the bug is).
> >>
> >>
> >> On Mar 9, 2010, at 3:07 PM, Eric Day wrote:
> >>
> >>> Eric Day has proposed merging lp:~eday/gearmand/fix-struct-alignment
> >>> into lp:gearmand.
> >>>
> >>> Requested reviews:
> >>> Gearman-developers (gearman-developers)
> >>>
> >>> --
> >>> https://code.launchpad.net/~eday/gearmand/fix-struct-alignment/+merge/21012
> >>> Your team Gearman-developers is subscribed to branch lp:gearmand.
> >>> === modified file 'libgearman/configure.h.in'
> >>> --- libgearman/configure.h.in 2010-02-12 20:26:31 +0000
> >>> +++ libgearman/configure.h.in 2010-03-09 23:07:17 +0000
> >>> @@ -16,7 +16,9 @@
> >>> extern "C" {
> >>> #endif
> >>>
> >>> -#ifdef TARGET_OS_LINUX
> >>> +#define LIBGEARMAN_OPTIMIZE_BITFIELD @PANDORA_OPTIMIZE_BITFIELD@
> >>> +
> >>> +#if LIBGEARMAN_OPTIMIZE_BITFIELD == 1
> >>> #define LIBGEARMAN_BITFIELD :1
> >>> #else
> >>> #define LIBGEARMAN_BITFIELD
> >>>
> >>> === modified file 'libgearman/connection.c'
> >>> --- libgearman/connection.c 2010-01-28 23:46:52 +0000
> >>> +++ libgearman/connection.c 2010-03-09 23:07:17 +0000
> >>> @@ -115,7 +115,7 @@
> >>> {
> >>> connection= gearman_connection_create(gearman, connection, NULL);
> >>>
> >>> - if (from || connection == NULL)
> >>> + if (from == NULL || connection == NULL)
> >>> return connection;
> >>>
> >>> connection->options.ready= from->options.ready;
> >>>
> >>> === modified file 'm4/pandora_platform.m4'
> >>> --- m4/pandora_platform.m4 2010-01-02 05:06:13 +0000
> >>> +++ m4/pandora_platform.m4 2010-03-09 23:07:17 +0000
> >>> @@ -34,11 +34,14 @@
> >>> ;;
> >>> esac
> >>>
> >>> + PANDORA_OPTIMIZE_BITFIELD=0
> >>> +
> >>> case "$target_os" in
> >>> *linux*)
> >>> TARGET_LINUX="true"
> >>> AC_SUBST(TARGET_LINUX)
> >>> AC_DEFINE([TARGET_OS_LINUX], [1], [Whether we build for Linux])
> >>> + PANDORA_OPTIMIZE_BITFIELD=1
> >>> ;;
> >>> *darwin*)
> >>> TARGET_OSX="true"
> >>> @@ -60,6 +63,8 @@
> >>> ;;
> >>> esac
> >>>
> >>> + AC_SUBST(PANDORA_OPTIMIZE_BITFIELD)
> >>> +
> >>> AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
> >>> AC_CHECK_DECL([__ICC], [INTELCC="yes"], [INTELCC="no"])
> >>>
> >>>
> >>> === modified file 'tests/client_test.c'
> >>> --- tests/client_test.c 2010-01-28 21:45:14 +0000
> >>> +++ tests/client_test.c 2010-03-09 23:07:17 +0000
> >>> @@ -99,6 +99,7 @@
> >>> test_return_t clone_test(void *object)
> >>> {
> >>> const gearman_client_st *from= (gearman_client_st *)object;
> >>> + gearman_client_st *from_with_host;
> >>> gearm...

Read more...

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'libgearman/configure.h.in'
2--- libgearman/configure.h.in 2010-02-12 20:26:31 +0000
3+++ libgearman/configure.h.in 2010-03-09 23:48:32 +0000
4@@ -16,7 +16,9 @@
5 extern "C" {
6 #endif
7
8-#ifdef TARGET_OS_LINUX
9+#define LIBGEARMAN_OPTIMIZE_BITFIELD @PANDORA_OPTIMIZE_BITFIELD@
10+
11+#if LIBGEARMAN_OPTIMIZE_BITFIELD == 1
12 #define LIBGEARMAN_BITFIELD :1
13 #else
14 #define LIBGEARMAN_BITFIELD
15
16=== modified file 'libgearman/connection.c'
17--- libgearman/connection.c 2010-01-28 23:46:52 +0000
18+++ libgearman/connection.c 2010-03-09 23:48:32 +0000
19@@ -115,7 +115,7 @@
20 {
21 connection= gearman_connection_create(gearman, connection, NULL);
22
23- if (from || connection == NULL)
24+ if (from == NULL || connection == NULL)
25 return connection;
26
27 connection->options.ready= from->options.ready;
28
29=== modified file 'm4/pandora_platform.m4'
30--- m4/pandora_platform.m4 2010-01-02 05:06:13 +0000
31+++ m4/pandora_platform.m4 2010-03-09 23:48:32 +0000
32@@ -34,6 +34,8 @@
33 ;;
34 esac
35
36+ PANDORA_OPTIMIZE_BITFIELD=1
37+
38 case "$target_os" in
39 *linux*)
40 TARGET_LINUX="true"
41@@ -47,6 +49,7 @@
42 ;;
43 *solaris*)
44 TARGET_SOLARIS="true"
45+ PANDORA_OPTIMIZE_BITFIELD=0
46 AC_SUBST(TARGET_SOLARIS)
47 AC_DEFINE([TARGET_OS_SOLARIS], [1], [Whether we are building for Solaris])
48 ;;
49@@ -60,6 +63,8 @@
50 ;;
51 esac
52
53+ AC_SUBST(PANDORA_OPTIMIZE_BITFIELD)
54+
55 AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
56 AC_CHECK_DECL([__ICC], [INTELCC="yes"], [INTELCC="no"])
57
58
59=== modified file 'tests/client_test.c'
60--- tests/client_test.c 2010-01-28 21:45:14 +0000
61+++ tests/client_test.c 2010-03-09 23:48:32 +0000
62@@ -99,6 +99,7 @@
63 test_return_t clone_test(void *object)
64 {
65 const gearman_client_st *from= (gearman_client_st *)object;
66+ gearman_client_st *from_with_host;
67 gearman_client_st *client;
68
69 client= gearman_client_clone(NULL, NULL);
70@@ -110,8 +111,21 @@
71
72 client= gearman_client_clone(NULL, from);
73 test_truth(client);
74-
75- gearman_client_free(client);
76+ gearman_client_free(client);
77+
78+ from_with_host= gearman_client_create(NULL);
79+ test_truth(from_with_host);
80+ gearman_client_add_server(from_with_host, "127.0.0.1", 12345);
81+
82+ client= gearman_client_clone(NULL, from_with_host);
83+ test_truth(client);
84+
85+ test_truth(client->universal.con_list);
86+ test_truth(!strcmp(client->universal.con_list->host, from_with_host->universal.con_list->host));
87+ test_truth(client->universal.con_list->port == from_with_host->universal.con_list->port);
88+
89+ gearman_client_free(client);
90+ gearman_client_free(from_with_host);
91
92 return TEST_SUCCESS;
93 }

Subscribers

People subscribed via source and target branches

to all changes: