size_t n;
struct random_data *buf;
{
- int type;
- int degree;
- int separation;
- int32_t *state;
- int old_type;
- int32_t *old_state;
-
if (buf == NULL)
goto fail;
- old_type = buf->rand_type;
- old_state = buf->state;
- if (old_type == TYPE_0)
- old_state[-1] = TYPE_0;
- else
- old_state[-1] = (MAX_TYPES * (buf->rptr - old_state)) + old_type;
+ int32_t *old_state = buf->state;
+ if (old_state != NULL)
+ {
+ int old_type = buf->rand_type;
+ if (old_type == TYPE_0)
+ old_state[-1] = TYPE_0;
+ else
+ old_state[-1] = (MAX_TYPES * (buf->rptr - old_state)) + old_type;
+ }
+ int type;
if (n >= BREAK_3)
type = n < BREAK_4 ? TYPE_3 : TYPE_4;
else if (n < BREAK_1)
else
type = n < BREAK_2 ? TYPE_1 : TYPE_2;
- degree = random_poly_info.degrees[type];
- separation = random_poly_info.seps[type];
+ int degree = random_poly_info.degrees[type];
+ int separation = random_poly_info.seps[type];
buf->rand_type = type;
buf->rand_sep = separation;
buf->rand_deg = degree;
- state = &((int32_t *) arg_state)[1]; /* First location. */
+ int32_t *state = &((int32_t *) arg_state)[1]; /* First location. */
/* Must set END_PTR before srandom. */
buf->end_ptr = &state[degree];
tests := tester inl-tester noinl-tester testcopy test-ffs \
tst-strlen stratcliff tst-svc tst-inlcall \
bug-strncat1 bug-strspn1 bug-strpbrk1 tst-bswap \
- tst-strtok tst-strxfrm bug-strcoll1 \
+ tst-strtok tst-strxfrm bug-strcoll1 tst-strfry \
$(addprefix test-,$(strop-tests))
distribute := memcopy.h pagecopy.h tst-svc.expect test-string.h
--- /dev/null
+#include <stdio.h>
+#include <string.h>
+
+static int
+do_test (void)
+{
+ char str[] = "this is a test";
+
+ strfry (str);
+
+ return 0;
+}
+
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"