@@ -72,6 +72,62 @@ static int allow_ref_in_want;
72
72
73
73
static int allow_sideband_all ;
74
74
75
+ struct upload_pack_data {
76
+ struct string_list wanted_refs ;
77
+ struct object_array want_obj ;
78
+ struct object_array have_obj ;
79
+ struct oid_array haves ;
80
+
81
+ struct object_array shallows ;
82
+ struct string_list deepen_not ;
83
+ int depth ;
84
+ timestamp_t deepen_since ;
85
+ int deepen_rev_list ;
86
+ int deepen_relative ;
87
+
88
+ struct list_objects_filter_options filter_options ;
89
+
90
+ struct packet_writer writer ;
91
+
92
+ unsigned stateless_rpc : 1 ;
93
+
94
+ unsigned use_thin_pack : 1 ;
95
+ unsigned use_ofs_delta : 1 ;
96
+ unsigned no_progress : 1 ;
97
+ unsigned use_include_tag : 1 ;
98
+ unsigned done : 1 ;
99
+ };
100
+
101
+ static void upload_pack_data_init (struct upload_pack_data * data )
102
+ {
103
+ struct string_list wanted_refs = STRING_LIST_INIT_DUP ;
104
+ struct object_array want_obj = OBJECT_ARRAY_INIT ;
105
+ struct object_array have_obj = OBJECT_ARRAY_INIT ;
106
+ struct oid_array haves = OID_ARRAY_INIT ;
107
+ struct object_array shallows = OBJECT_ARRAY_INIT ;
108
+ struct string_list deepen_not = STRING_LIST_INIT_DUP ;
109
+
110
+ memset (data , 0 , sizeof (* data ));
111
+ data -> wanted_refs = wanted_refs ;
112
+ data -> want_obj = want_obj ;
113
+ data -> have_obj = have_obj ;
114
+ data -> haves = haves ;
115
+ data -> shallows = shallows ;
116
+ data -> deepen_not = deepen_not ;
117
+ packet_writer_init (& data -> writer , 1 );
118
+ }
119
+
120
+ static void upload_pack_data_clear (struct upload_pack_data * data )
121
+ {
122
+ string_list_clear (& data -> wanted_refs , 1 );
123
+ object_array_clear (& data -> want_obj );
124
+ object_array_clear (& data -> have_obj );
125
+ oid_array_clear (& data -> haves );
126
+ object_array_clear (& data -> shallows );
127
+ string_list_clear (& data -> deepen_not , 0 );
128
+ list_objects_filter_release (& data -> filter_options );
129
+ }
130
+
75
131
static void reset_timeout (void )
76
132
{
77
133
alarm (timeout );
@@ -1130,62 +1186,6 @@ void upload_pack(struct upload_pack_options *options)
1130
1186
list_objects_filter_release (& filter_options );
1131
1187
}
1132
1188
1133
- struct upload_pack_data {
1134
- struct string_list wanted_refs ;
1135
- struct object_array want_obj ;
1136
- struct object_array have_obj ;
1137
- struct oid_array haves ;
1138
-
1139
- struct object_array shallows ;
1140
- struct string_list deepen_not ;
1141
- int depth ;
1142
- timestamp_t deepen_since ;
1143
- int deepen_rev_list ;
1144
- int deepen_relative ;
1145
-
1146
- struct list_objects_filter_options filter_options ;
1147
-
1148
- struct packet_writer writer ;
1149
-
1150
- unsigned stateless_rpc : 1 ;
1151
-
1152
- unsigned use_thin_pack : 1 ;
1153
- unsigned use_ofs_delta : 1 ;
1154
- unsigned no_progress : 1 ;
1155
- unsigned use_include_tag : 1 ;
1156
- unsigned done : 1 ;
1157
- };
1158
-
1159
- static void upload_pack_data_init (struct upload_pack_data * data )
1160
- {
1161
- struct string_list wanted_refs = STRING_LIST_INIT_DUP ;
1162
- struct object_array want_obj = OBJECT_ARRAY_INIT ;
1163
- struct object_array have_obj = OBJECT_ARRAY_INIT ;
1164
- struct oid_array haves = OID_ARRAY_INIT ;
1165
- struct object_array shallows = OBJECT_ARRAY_INIT ;
1166
- struct string_list deepen_not = STRING_LIST_INIT_DUP ;
1167
-
1168
- memset (data , 0 , sizeof (* data ));
1169
- data -> wanted_refs = wanted_refs ;
1170
- data -> want_obj = want_obj ;
1171
- data -> have_obj = have_obj ;
1172
- data -> haves = haves ;
1173
- data -> shallows = shallows ;
1174
- data -> deepen_not = deepen_not ;
1175
- packet_writer_init (& data -> writer , 1 );
1176
- }
1177
-
1178
- static void upload_pack_data_clear (struct upload_pack_data * data )
1179
- {
1180
- string_list_clear (& data -> wanted_refs , 1 );
1181
- object_array_clear (& data -> want_obj );
1182
- object_array_clear (& data -> have_obj );
1183
- oid_array_clear (& data -> haves );
1184
- object_array_clear (& data -> shallows );
1185
- string_list_clear (& data -> deepen_not , 0 );
1186
- list_objects_filter_release (& data -> filter_options );
1187
- }
1188
-
1189
1189
static int parse_want (struct packet_writer * writer , const char * line ,
1190
1190
struct object_array * want_obj )
1191
1191
{
0 commit comments