12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Copyright (c) 2013 The Chromium Authors. All rights reserved.
22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// found in the LICENSE file.
42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "reverse.h"
62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include <stdlib.h>
72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include <string.h>
82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)extern "C" char* Reverse(const char* s) {
102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  size_t len = strlen(s);
112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  char* reversed = static_cast<char*>(malloc(len + 1));
122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  for (int i = len - 1; i >= 0; --i)
132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    reversed[len - i - 1] = s[i];
142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  reversed[len] = 0;
152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  return reversed;
162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
17